如何在同一活动中显示网站?

时间:2018-10-28 07:44:34

标签: android android-webview

我创建了一个应用程序,在其中单击“按钮”,网站应在同一活动中打开。

  

按钮1->应该加载网站=>“ google”

     

按钮2->应该加载网站=>“ Google Play”

     

按钮3->应该加载网站=>“您管”

这就是我想要的样子:https://i.stack.imgur.com/yzDF9.png

activity_main.xml的示例代码

<?xml version="1.0" encoding="utf-8"?> <LinearLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     tools:context=".MainActivity">


    <LinearLayout
         android:id="@+id/linear1"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:layout_alignParentTop="true"
         android:orientation="horizontal">

         <ScrollView
             android:id="@+id/Srcollview1"
             android:layout_width="100dp"
             android:layout_height="match_parent">

             <LinearLayout
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:orientation="vertical">
                 <Button
                     android:id="@+id/btn1"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:text="program 1"
                     ></Button>
                 <Button
                     android:id="@+id/btn2"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:text="program 2"
                     ></Button>
                 <Button
                     android:id="@+id/btn3"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:text="program 3"
                     ></Button>
             </LinearLayout>
         </ScrollView>

         <LinearLayout
             android:id="@+id/container"
             android:layout_width="match_parent"
             android:layout_height="match_parent">

             <WebView
                 android:id="@+id/webviewing"
                 android:layout_width="match_parent"
                 android:layout_height="match_parent"
                 >
             </WebView>
         </LinearLayout>
     </LinearLayout> </LinearLayout>

MainActivity.java的示例代码

 Button b1,b2,b3;
 WebView webView;
 LinearLayout l1;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);

     b1 = (Button)findViewById(R.id.btn1);
     b2 = (Button)findViewById(R.id.btn2);
     b3 = (Button)findViewById(R.id.btn3);


     b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
             webView = (WebView) findViewById(R.id.webviewing);
             webView.getSettings().setJavaScriptEnabled(true);
             webView.loadUrl("https://www.google.com");
         }
     });

     b2.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
             webView = (WebView) findViewById(R.id.webviewing);
             webView.getSettings().setJavaScriptEnabled(true);
             webView.loadUrl("https://play.google.com/");

         }
     });

     b2.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
             webView = (WebView) findViewById(R.id.webviewing);
             webView.getSettings().setJavaScriptEnabled(true);
             webView.loadUrl("https://www.youtube.com/");
         }
     });
 }

1 个答案:

答案 0 :(得分:1)

您的代码工作正常,但您将b2的侦听器设置了两次。也许是错字?

如果遇到连接错误,只需将Internet权限添加到AndroidManifest.xml。

<uses-permission android:name="android.permission.INTERNET"/>