Совет по нажатию кнопки приложения для Android

#android #button #onclick

#Android #кнопка #onclick

Вопрос:

Я пытаюсь создать свое первое приложение для Android и нуждаюсь в некоторой помощи.

В принципе, приложение имеет webview, который загружает URL-адрес, который работает нормально, но у меня под ним есть кнопка, при нажатии на которую я хочу открывать другой URL-адрес в окне webview.

Я не могу понять, как указать кнопке сделать это.

Это мое первое приложение, поэтому приношу извинения, если ответ очень прост.

Заранее большое спасибо

Джей

Комментарии:

1. Пожалуйста, скажите, находится ли кнопка внутри webview (и сделано ли это с помощью html) или это классический виджет для Android.

2. это за пределами webview, я думаю, что я сделал это с помощью виджета, но не уверен на 100%, что я все еще учусь, как я могу сказать?

Ответ №1:

Предполагая, что кнопка находится внутри WebView…

создайте новый класс, который расширяет webviewclient, и добавьте его в свой веб-просмотр следующим образом .. , он загрузит остальные URL-адреса в тот же веб-просмотр.

 mWebView.setWebViewClient(new HelloWebViewClient());


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

взгляните также на этот учебник….

если она находится за пределами WebView.. затем

 Button webButton = (Button) findViewById(R.id.yourbuttonId);
webButton.setOnClickListener(new OnClickListener() {
  @Override
  public void onClick(View v) {
         mWebView.loadUrl(urltoload);
  }
});
  

mWebView — это веб-представление в вашем xml. вам необходимо получить к нему доступ. Поместите приведенный выше код в onCreate своей активности после того, как вы выполните setContentView()

Комментарии:

1. Спасибо за ответ и ссылку, но кнопка находится за пределами webview, под ней, будет ли код, который вы предоставили, по-прежнему работать?

2. большое спасибо за это, как мне назначить это для нажатия кнопки?

3. Спасибо за вашу помощь, я ценю это, но я в замешательстве, вот мой .java. РЕДАКТИРОВАТЬ, это не позволит мне публиковать код, чтобы долго. : (

Ответ №2:

 button.setOnClickListener(new OnClickListener() {
  @Override
  public void onClick(View v) {
    webView.loadUrl(yourUrl);
  }
});
  

Комментарии:

1. Спасибо за ответ, куда мне поместить это в main.xml ?

2. внутри вашего oncreate, после инициализации переменных button и webview