乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Android自定義 WebView瀏覽器

       quasiceo 2016-08-03

      Android自定義 WebView瀏覽器

      作者:陶士涵 字體:[增加 減小] 類型:轉載 時間:2016-05-01 我要評論

      WebView是Android中一個非常實用的組件,它和Safai、Chrome一樣都是基于Webkit網(wǎng)頁渲染引擎。接下來通過本文給大家介紹android自定義webview瀏覽器,感興趣的朋友一起學習吧

      WebView是Android中一個非常實用的組件,它和Safai、Chrome一樣都是基于Webkit網(wǎng)頁渲染引擎,可以通過加載HTML數(shù)據(jù)的方式便捷地展現(xiàn)軟件的界面。

      在布局文件中添加<EditText/>和<Button/>控件,

      在布局文件中添加<WebView/>控件

      在Activity中獲取WebView對象

      調(diào)用WebView對象的loadUrl()方法,參數(shù):String路徑

      添加訪問網(wǎng)絡的權限android.permission.INTERNET

      調(diào)用WebView對象的getSettings()方法,獲取到WebSettings設置對象

      調(diào)用WebSettings對象的setSupportZoom()方法,設置支持縮放,參數(shù):布爾值

      調(diào)用WebSettings對象的setBuiltInZoomControls(),設置縮放控件,參數(shù):布爾值、

      調(diào)用WebView對象的setWebViewClient()方法,設置客戶端防止鏈接打開系統(tǒng)瀏覽器,參數(shù):WebViewClient對象

      監(jiān)聽后退鍵,返回上一界面

      重寫Activity的onKeyDown()方法,參數(shù)傳遞進來int鍵盤碼,KeyEvent對象

      如果鍵盤碼等于KeyEvent.KEYCODE_BACK并且當前WebView對象有很多頁能后退,調(diào)用WebView對象的canGoBack()方法

      調(diào)用WebView對象的goBack()方法,頁面后退

      設置菜單鍵,重寫onCreateOptionsMenu()方法,傳遞進來Menu對象

      調(diào)用Menu對象的addSubMenu()方法,添加菜單,參數(shù):組id,條目id,排序,標題

      添加刷新,后退,前進

      監(jiān)聽小菜單點擊事件

      重寫onOptionsItemSelected()方法,傳遞進來MenuItem對象

      switch判斷一下MenuItem對象的getOrder(),對應上面的排序

      頁面刷新,調(diào)用WebView對象的reload()方法

      頁面后退,先調(diào)用WebView對象的canGoBack()方法,判斷是否能后退,調(diào)用goBack()方法后退

      頁面前進,調(diào)用WebView對象的canGoForward()方法,判斷是否能前進,調(diào)用goForward()方法前進

      頁面loading

      獲取ProgressDialog對象,new出來,參數(shù):上下文

      調(diào)用ProgressDialog對象的setMessage()方法,參數(shù):文本

      調(diào)用WebView對象的setWebChromeClient()方法,參數(shù):WebViewClient對象,

      匿名內(nèi)部類繼承WebViewClient類,重寫onPageStarted()方法和onPageFinshed()方法

      在onPageStarted()方法內(nèi)

      調(diào)用ProgressDialog對象的show()方法

      在onPageFinshed()方法內(nèi)

      調(diào)用ProgressDialog對象的dismiss()方法

      package com.tsh.mywebview;
      import android.app.Activity;
      import android.app.ProgressDialog;
      import android.graphics.Bitmap;
      import android.os.Bundle;
      import android.view.KeyEvent;
      import android.view.Menu;
      import android.view.MenuItem;
      import android.view.Window;
      import android.webkit.WebSettings;
      import android.webkit.WebView;
      import android.webkit.WebViewClient;
      public class MainActivity extends Activity {
      private WebView webview;
      private ProgressDialog pd;
      @Override
      protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      requestWindowFeature(Window.FEATURE_NO_TITLE);
      setContentView(R.layout.activity_main);
      pd=new ProgressDialog(this);
      pd.setMessage("正在加載...");
      //webview的簡單設置
      webview=(WebView) findViewById(R.id.wv_internet);
      webview.loadUrl("https://www.baidu.com");
      WebSettings websettings=webview.getSettings();
      websettings.setSupportZoom(true);
      websettings.setBuiltInZoomControls(true);
      webview.setWebViewClient(new WebViewClient(){
      @Override
      public void onPageStarted(WebView view, String url, Bitmap favicon) {
      pd.show();
      }
      @Override
      public void onPageFinished(WebView view, String url) {
      pd.dismiss();
      }
      });
      }
      //后退鍵
      @Override
      public boolean onKeyDown(int keyCode, KeyEvent event) {
      if(keyCode==KeyEvent.KEYCODE_BACK&&webview.canGoBack()){
      webview.goBack();
      return true;
      }
      return super.onKeyDown(keyCode, event);
      }
      //菜單鍵
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
      menu.add(0, 0, 0, "刷新");
      menu.add(0, 0, 1, "后退");
      menu.add(0, 0, 2, "前進");
      return super.onCreateOptionsMenu(menu);
      }
      //菜單點擊事件
      @Override
      public boolean onOptionsItemSelected(MenuItem item) {
      switch (item.getOrder()) {
      case 0:
      webview.reload();
      break;
      case 1:
      if(webview.canGoBack()){
      webview.goBack();
      }
      break;
      case 2:
      if(webview.canGoForward()){
      webview.goForward();
      }
      break;
      }
      return super.onOptionsItemSelected(item);
      }
      }

      關于本文給大家介紹的Android自定義 WebView瀏覽器的內(nèi)容就給大家介紹這么多,希望對大家有所幫助!

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多