第一种方式
public class MainActivity extends Activity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
// 创建一webview对象
webView = new WebView(MainActivity.this);
// 需要加载的网页数据
webView.loadUrl("http://www.m.baidu");
// 这个activity加载的是一个webview,而不是一个布局文件
setContentView(webView);
}
}
第二种方式
1.在布局文件中定义一个webview控件
<LinearLayout xmlns:android="http://schemas.android/apk/res/android"
xmlns:tools="http://schemas.android/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
2.在代码中控制
public class MainActivity extends Activity implements OnClickListener {
private TextView fanhui, shuaxin, title;
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fanhui = (TextView) findViewById(R.id.fanhui);
shuaxin = (TextView) findViewById(R.id.shuaxin);
title = (TextView) findViewById(R.id.title);
webView = (WebView) findViewById(R.id.webview);
fanhui.setOnClickListener(MainActivity.this);
shuaxin.setOnClickListener(MainActivity.this);
title.setOnClickListener(MainActivity.this);
// 默认是去调用了浏览器来加载页面数据
webView.loadUrl("http://www.taobao");
// 设置支持js
webView.getSettings().setJavaScriptEnabled(true);
// 帮助webview去处理各种通知或者请求事件
webView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
webView.loadUrl(url);
return super.shouldOverrideUrlLoading(view, url);
}
});
// 帮助webview去处理js事件,网站的标题,加载的进度
webView.setWebChromeClient(new WebChromeClient() {
public void onReceivedTitle(WebView view, String title) {
super.onReceivedTitle(view, title);
MainActivity.this.title.setText(title);
}
});
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.fanhui://返回
if (webView != null && webView.canGoBack()) {
webView.goBack();
}
break;
case R.id.shuaxin://刷新
webView.reload();
break;
}
}
@Override
public void onBackPressed() {
if (webView != null && webView.canGoBack()) {
webView.goBack();
}else {
super.onBackPressed();
}
}
}
第一种方式
public class MainActivity extends Activity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
// 创建一webview对象
webView = new WebView(MainActivity.this);
// 需要加载的网页数据
webView.loadUrl("http://www.m.baidu");
// 这个activity加载的是一个webview,而不是一个布局文件
setContentView(webView);
}
}
第二种方式
1.在布局文件中定义一个webview控件
<LinearLayout xmlns:android="http://schemas.android/apk/res/android"
xmlns:tools="http://schemas.android/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
2.在代码中控制
public class MainActivity extends Activity implements OnClickListener {
private TextView fanhui, shuaxin, title;
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fanhui = (TextView) findViewById(R.id.fanhui);
shuaxin = (TextView) findViewById(R.id.shuaxin);
title = (TextView) findViewById(R.id.title);
webView = (WebView) findViewById(R.id.webview);
fanhui.setOnClickListener(MainActivity.this);
shuaxin.setOnClickListener(MainActivity.this);
title.setOnClickListener(MainActivity.this);
// 默认是去调用了浏览器来加载页面数据
webView.loadUrl("http://www.taobao");
// 设置支持js
webView.getSettings().setJavaScriptEnabled(true);
// 帮助webview去处理各种通知或者请求事件
webView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
webView.loadUrl(url);
return super.shouldOverrideUrlLoading(view, url);
}
});
// 帮助webview去处理js事件,网站的标题,加载的进度
webView.setWebChromeClient(new WebChromeClient() {
public void onReceivedTitle(WebView view, String title) {
super.onReceivedTitle(view, title);
MainActivity.this.title.setText(title);
}
});
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.fanhui://返回
if (webView != null && webView.canGoBack()) {
webView.goBack();
}
break;
case R.id.shuaxin://刷新
webView.reload();
break;
}
}
@Override
public void onBackPressed() {
if (webView != null && webView.canGoBack()) {
webView.goBack();
}else {
super.onBackPressed();
}
}
}