简介WebView




 注意:需要在AndroidManifest.xml文件中添加权限,否则出现Web page not available错误。
<uses-permission android:name="android.permission.INTERNET"/>

public class MainActivity extends Activity { 
    private WebView webview; 
    @Override
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
        webview = (WebView) findViewById(R.id.webview); 
        //设置WebView属性,能够执行Javascript脚本 
        webview.getSettings().setJavaScriptEnabled(true);
       //设置可以自动加载图片
        webview.getSettings().setLoadsImagesAutomatically(true);
        //加载需要显示的网页 
        webview.loadUrl("http://www.51cto.com/"); 
        //设置Web视图 
        webview.setWebViewClient(new HelloWebViewClient ()); 
    } 
     
    @Override
    //用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法,如果不做任何处理,点击系统回退剪键,整个浏览器会调         用finish()而结束自身,而不是回退到上一页面
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
        if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack()) { 
            webview.goBack(); //goBack()表示返回WebView的上一页面 
            return true; 
        } 
        return false; 
    } 
 // 为了让WebView能够响应超链接功能(不使用系统默认的浏览器),调用setWebViewClient( )方法
    private class HelloWebViewClient extends WebViewClient { 
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) { 
            view.loadUrl(url); 
            return true; 
        } 
          //1 ,接收到 Http 请求的事件 
         //onReceivedHttpAuthRequest(WebView view, HttpAuthHandler handler, String host, String realm) 
 


        //2,打开链接前的事件
       //public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } 


      //这个函数我们可以做很多操作,比如我们读取到某些特殊的URL,于是就可以不打开地址,取消这个操作,进行预先定义的其他操作,这对一个程序是非常必要的。
 
     //3,载入页面完成的事件
     //public void onPageFinished(WebView view, String url){ } 


    //同样道理,我们知道一个页面载入完成,于是我们可以关闭loading条,切换程序动作。
 
     //4,载入页面开始的事件
    //public void onPageStarted(WebView view, String url, Bitmap favicon) { } 
    } 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值