继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

自定义网页浏览器WebView

繁华开满天机
关注TA
已关注
手记 134
粉丝 15
获赞 68
public class WebViewActivity extends BaseActivity implements OnClickListener {
    private WebView mWebView;
    private ImageView mBack;
    private TextView mTitle;
    private Context mcontext;
    private  Handler handler;
  
    private boolean mIsHotActivity = false;
    
@Override
    protected void onCreate(Bundle arg0) {
       setContentView(R.layout.oa_webview_layout);
        
        mWebView = (WebView) findViewById(R.id.webview);
        mBack = (ImageView) findViewById(R.id.back);
        mTitle = (TextView) findViewById(R.id.title);
        mBack.setOnClickListener(this);
        Bundle bundle = this.getIntent().getExtras();
        final String url = bundle.getString("url");
        final String title = bundle.getString("title");
        mTitle.setText(title);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
        mWebView.getSettings().setDefaultTextEncodingName("utf-8");
        mWebView.getSettings().setAllowFileAccess(true);
        mWebView.getSettings().setAllowFileAccessFromFileURLs(true);
        
        mWebView.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String loadUrl) {
             
                view.loadUrl(loadUrl);
                return true;
            }
           
        mWebView.loadUrl(url);
               }
        switch(msg.what){
        case 0: 
        Bundle bundle=msg.getData();
        String failingUrl=bundle.getString("FAILINGURL");
        mWebView.loadUrl(failingUrl); break;
        default: break;
        
        }
        
                }
        
        }; 
      
        super.onCreate(arg0);
    }
    
    
   //此方法能让返回键返回到上一个页面,而不是直接退出WebViewActivity
    @Override
  public boolean onKeyDown(int keyCode, KeyEvent event) {
        if((keyCode==KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()){
        mWebView.goBack(); 
         return true;
      }
        else if((keyCode==KeyEvent.KEYCODE_BACK) && !mWebView.canGoBack()){
      finish();
       }
       return false;
    }
 
    
   
@Override
protected void onPause() {
super.onPause();
      
}
private void destoryWebView() {
    if (mWebView != null) {
    mWebView.removeAllViews();
    mWebView.destroy();
    mWebView = null;
    }
    }
    @Override
protected void onDestroy() {
    destoryWebView();
super.onDestroy();
}
@Override
protected void onStop() {
destoryWebView();
super.onStop();
}
    @Override
        public void onClick(View v) {
            switch (v.getId()) {
            case R.id.back:
                destoryWebView();
                finish();
                break;
            default:
                break;
            }
            
    }
   
}

原文链接:http://www.apkbus.com/blog-653697-59423.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP