0

在此处输入图像描述

在这张图片中,我点击了 google 按钮,它在 webview 中显示了 google 网站,但它也显示了它上面的应用程序的主要布局(两个按钮)。我想在我点击 google 按钮时只点击网站应该出现在 webview 而不是它上面的按钮。这是我的 java 和 xml 代码。提前致谢。

public class TestinglinkActivity extends Activity {
     final Activity activity = this;
     WebView webview;

    private class MyWebViewClient extends WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;


        }
    }


    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);


    webview = (WebView) findViewById(R.id.webview);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.setWebViewClient(new MyWebViewClient());



    webview.setWebChromeClient(new WebChromeClient() {
        public void onProgressChanged(WebView view, int progress)
        {

            activity.setTitle("Loading...");
            activity.setProgress(progress * 100);

            if(progress == 100)
                activity.setTitle(R.string.app_name);
        }
    });


    Button btn_google = (Button) findViewById(R.id.btn_click_login);
    btn_google.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
             webview.loadUrl("http://www.google.com.pk");
             webview.goBack();
             webview.goForward();


          }
         }
     );


    Button btn_gmail = (Button) findViewById(R.id.btn_gmail);
    btn_gmail.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {
             webview.loadUrl("http://www.gmail.com");
             webview.goBack();
             webview.goForward();


          }
         }
     );

           }   
};
}

xml

<?xml version="1.0" encoding="utf-8"?> 

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
             android:layout_width="fill_parent"
             android:layout_height="fill_parent" >  

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <Button 
            android:id="@+id/btn_click_login"
            android:layout_height="fill_parent"
            android:layout_width="fill_parent"
            android:layout_weight="2"
            android:text="Google"/>

    <Button 
            android:id="@+id/btn_gmail"
            android:layout_height="fill_parent"
            android:layout_width="fill_parent"
            android:layout_weight="2"
            android:text="Gmail"/>

  <WebView 
        android:id="@+id/webview"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
 </WebView>

</LinearLayout>



</ScrollView>
4

2 回答 2

0

使用下面的代码

btn_google = (Button) findViewById(R.id.btn_click_login);
btn_google.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        webview.loadUrl("http://www.google.com.pk");
        webview.goBack();
        webview.goForward();
        TestinglinkActivity.this.btn_google.setVisibility(View.GONE);
        TestinglinkActivity.this.btn_gmail.setVisibility(View.GONE);
    }
});

btn_gmail = (Button) findViewById(R.id.btn_gmail);
btn_gmail.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        webview.loadUrl("http://www.gmail.com");
        webview.goBack();
        webview.goForward();
        TestinglinkActivity.this.btn_google.setVisibility(View.GONE);
        TestinglinkActivity.this.btn_gmail.setVisibility(View.GONE);
    }
});

代替

Button btn_google = (Button) findViewById(R.id.btn_click_login);
btn_google.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
             webview.loadUrl("http://www.google.com.pk");
             webview.goBack();
             webview.goForward();
      }
});


Button btn_gmail = (Button) findViewById(R.id.btn_gmail);
btn_gmail.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {
             webview.loadUrl("http://www.gmail.com");
             webview.goBack();
             webview.goForward();
      }
});

并在全球范围内声明按钮 btn_google 和 btn_gmail。

于 2012-06-22T11:53:53.843 回答
0

使用 setVisibility(View.GONE) 在点击时隐藏按钮:

Button btn_gmail = (Button) findViewById(R.id.btn_gmail);
Button btn_google = (Button) findViewById(R.id.btn_click_login);
    btn_google.setOnClickListener(new OnClickListener() {
         public void onClick(View v) {

             webview.loadUrl("http://www.google.com.pk");
             btn_google.setVisibility(View.GONE);
             btn_gmail.setVisibility(View.GONE);
             webview.goBack();
             webview.goForward();


          }
         }
     );
于 2012-06-22T11:47:59.243 回答