您的位置:首页 > 移动开发

android studio webview加载网页

2016-07-27 17:37 281 查看
第一种方式:

在layout上放一个webview控件:

<WebView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/wv"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true" />

在activity 中代码如下:

public class MainActivity extends AppCompatActivity {
WebView wv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

wv=(WebView)findViewById(R.id.wv);
WebSettings ws=wv.getSettings();
ws.setJavaScriptEnabled(true);
wv.loadUrl("网址");
wv.setWebViewClient(new WebViewClient());

}

@Override
public void onBackPressed() {
if(wv.canGoBack()){
wv.goBack();
}else {
super.onBackPressed();
}

}

第二种方式:

输入网址,点击按钮,下方显示网站页面

layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margi
ab9f
n"
android:orientation="vertical"
tools:context="com.example.jowang.learnlayout.MainActivity">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/edit"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Go"
android:id="@+id/btn"/>
</LinearLayout>
<WebView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/web"></WebView>
</LinearLayout>
activity:
public class MainActivity extends AppCompatActivity {
private LinearLayout root;
private Button go;
WebView webView;
EditText editText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
go=(Button)findViewById(R.id.btn);
editText=(EditText)findViewById(R.id.edit);
webView=(WebView)findViewById(R.id.web);

go.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
WebSettings ws=webView.getSettings();
ws.setJavaScriptEnabled(true);
webView.loadUrl(editText.getText().toString());
webView.setWebViewClient(new WebViewClient());

}
});
}

@Override
public void onBackPressed() {
if (webView.canGoBack()){
webView.goBack();
}else {
super.onBackPressed();
}
}
}
这种方式的问题在于,onbackpressed方法不好用了,按下back键直接退出了程序,有什么好的解决办法嘛?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: