您的位置:首页 > 理论基础 > 计算机网络

安卓小渣渣的成长之路2.0——使用WebView显示网络视图

2014-07-14 22:24 507 查看
本文章内容过于浅显,不涉及较深的内容

本程序有以下bug,所有的网页在3G网情况下均能显示,但是在无线网的情况下百度界面显示不了,如有大神解决,告之,感激不尽

贴代码:

import android.os.Bundle;

import android.app.Activity;

import android.view.KeyEvent;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.Window;

import android.webkit.WebChromeClient;

import android.webkit.WebView;

import android.webkit.WebViewClient;

import android.widget.Button;

import android.widget.EditText;

public class MainActivity extends Activity {

WebView webView;

private Button btn1;

private EditText editText;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_PROGRESS);

setContentView(R.layout.activity_main);

webView=(WebView)findViewById(R.id.webView1);

webView.getSettings().setJavaScriptEnabled(true);

webView.getSettings().setBuiltInZoomControls(true);

webView.getSettings().setUseWideViewPort(true);

webView.loadUrl("http://www.hao123.com/");

webView.setWebViewClient(new HelloWebViewClient());

editText = (EditText) findViewById(R.id.editText1);

btn1 = (Button) findViewById(R.id.button1);

webView.setWebChromeClient(new WebChromeClient() {

public void onProgressChanged(WebView view, int progress) {

// Activity和Webview根据加载程度决定进度条的进度大小

// 当加载到100%的时候 进度条自动消失

MainActivity.this.setProgress(progress * 100);

}

});

btn1.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO 自动生成的方法存根

go();

setTitle(editText.getText().toString());

}

});

}

public boolean onKeyDown(int keyCode,KeyEvent event)

{

if((keyCode==KeyEvent.KEYCODE_BACK)&&webView.canGoBack())

{

webView.goBack();

return true;

}

return super.onKeyDown(keyCode, event);

}

private class HelloWebViewClient extends WebViewClient{

public boolean shouldOverrideUrlLoading(WebView view,String url)

{

view.loadUrl(url);

return true;

}

}

public void go()

{

webView.loadUrl("http://"+editText.getText().toString());

}

}

.............................我是分割线..................................................................

贴上Activity_main.xml代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:paddingBottom="@dimen/activity_vertical_margin"

android:paddingLeft="@dimen/activity_horizontal_margin"

android:paddingRight="@dimen/activity_horizontal_margin"

android:paddingTop="@dimen/activity_vertical_margin"

tools:context=".MainActivity" >

<EditText

android:id="@+id/editText1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentLeft="true"

android:layout_alignParentTop="true"

android:ems="10"

android:inputType="textAutoComplete|textUri|textWebEditText" >

<requestFocus />

</EditText>

<Button

android:id="@+id/button1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignBottom="@+id/editText1"

android:layout_alignParentRight="true"

android:text="go" />

<WebView

android:id="@+id/webView1"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:layout_alignLeft="@+id/editText1"

android:layout_below="@+id/editText1" />

</RelativeLayout>

..............................我是分割线.....................................................

在Mainfest.xml里面添加权限

<uses-permission android:name="android.permission.INTERNET"></uses-permission>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: