首先,檢查是否有清單文件Internet權限。
<uses-permission android:name="android.permission.INTERNET" />
可以再加入繼的onCreate(代碼)或初始化()方法 -
final WebView webview = (WebView) rootView.findViewById(R.id.webview);
webview.setWebViewClient(new MyWebViewClient());
webview.getSettings().setBuiltInZoomControls(false);
webview.getSettings().setSupportZoom(false);
webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webview.getSettings().setAllowFileAccess(true);
webview.getSettings().setDomStorageEnabled(true);
webview.loadUrl(URL);
,寫一個類來處理的WebView的回調 - 在同一類
public class MyWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//your handling...
return super.shouldOverrideUrlLoading(view, url);
}
}
,你也可以使用其他重要的回調如 -
- onPageStarted()
- onPageFinished()
- onReceivedSslError()
此外,您可以添加「SwipeRefreshLayout」以啓用刷新刷新並刷新網頁視圖。
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipeRefreshLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</android.support.v4.widget.SwipeRefreshLayout>
,並刷新網頁視圖當用戶掃描屏幕:
SwipeRefreshLayout mSwipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipeRefreshLayout);
mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
mSwipeRefreshLayout.setRefreshing(false);
webview.reload();
}
}, 3000);
}
});
來源
2015-10-08 06:12:19
DsD
是否加載在默認的Android瀏覽器的URL工作的? – 2013-04-25 05:38:52
你有互聯網許可嗎? – Lucifer 2013-04-25 05:39:28
@LeonLucardie在設備瀏覽器中工作 – String 2013-04-25 05:45:40