如何通过 webview current url 设置按钮可见性

How can I set button visibility by webview current url

我尝试了很多次通过加载的 webview 改变不可见按钮的可见性 url。

我只想在 url 等于“http://trscript.net/index.php”时设置不可见。 我打印了 url 并且它是“http://trscript.net/index.php”,但没有任何变化。

代码在这里;

 public class MainActivity extends Activity {
        Button refresh;

        protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              refresh=findViewById(R.id.refresh);
              myView = findViewById(R.id.web);

              myView.setWebViewClient(new WebViewClient() {
                                public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
                                    myView.loadUrl("file:///android_asset/no.html");

                                }


                                @Override
                                public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
                                    handler.proceed();
                                }



                                @Override
                                public void onPageFinished(WebView view, String url) {
                                    if(url=="http://trscript.net/index.php"){
                                        refresh.setVisibility(View.INVISIBLE);


                                    }
                                    else{
                                        refresh.setVisibility(View.VISIBLE);

                                    }
                                    dialog.dismiss();
                                }
                            }

}

在 java 中,当在两个对象上使用 == 时,您实际上并不是在比较字符串本身。你需要使用 .equals(String).

== 实际上比较的是两个对象的引用,而不是它们的值。

string1.equals(字符串目标)根据字符串中的实际字符比较两个字符串。

请用以下代码替换您的两个字符串比较代码:

 if(url.equals("http://trscript.net/index.php")){
     refresh.setVisibility(View.INVISIBLE);
    }