webView的常用方法
正常是这样的
mWebView.loadDataWithBaseURL("http://www.imooc.com/","<img src=\"static/img/index/logo.png\"/>","text/html","utf-8","");
// a标签跳转到百度后,后退的操作会跳到http://www.sogou.com/
mWebView.loadDataWithBaseURL("http://www.imooc.com/",
"<img src=\"static/img/index/logo.png\"/><a href=\"http://www.baidu.com/\">tobaibu.com</a>",
"text/html","utf-8","http://www.imooc.com/");
mWebView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view,String url){
// Map<String,String> reqHeaders = new HashMap<>();
// reqHeaders.put("android-webview-demo","testReqHeaders");
// mWebView.loadUrl("http://192.168.0.103:8080/example/index.html",reqHeaders);
return super.shouldOverrideUrlLoading(view,url);
}
});
}
public void onBack(View view){
mWebView.goBack();
}
控制网页的前进后退
package com.example.testapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.EditText;
import android.widget.Toast;
import java.util.HashMap;
import java.util.Map;
public class ActivityWebView extends AppCompatActivity {
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_web_view);
mWebView = findViewById(R.id.webview);
mWebView.loadUrl("http://www.baidu.com/");
mWebView.setWebViewClient(new WebViewClient());
}
public void onBack(View view){
mWebView.goBack();
}
public void onCanGoBack (View v) {
Toast.makeText(this, String.valueOf(mWebView.canGoBack()), Toast.LENGTH_SHORT).show();
}
public void onGoBack (View v) {
mWebView.goBack();
}
public void onCanGoForward (View v) {
Toast.makeText(this, String.valueOf(mWebView.canGoForward()), Toast.LENGTH_SHORT).show();
}
public void onGoForward (View v) {
mWebView.goForward();
}
public void onCanGoBackOrForward (View v) {
int steps = Integer.valueOf(((EditText)findViewById(R.id.steps)).getText().toString());
Toast.makeText(this, String.valueOf(mWebView.canGoBackOrForward(steps)), Toast.LENGTH_SHORT).show();
}
public void onGoBackOrForward (View v) {
int steps = Integer.valueOf(((EditText)findViewById(R.id.steps)).getText().toString());
mWebView.goBackOrForward(steps);
}
public void onClearHistory (View v) {
mWebView.clearHistory();
}
}
@Override
protected void onPause() {
super.onPause();
// 暂停所有操作
mWebView.onPause();
}
@Override
protected void onResume() {
super.onResume();
mWebView.onResume();
}
@Override
protected void onDestroy() {
super.onDestroy();
mWebView.destroy();
}