第一种方式:
在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_margin" 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键直接退出了程序,有什么好的解决办法嘛?