You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WebView部分按钮无响应问题求助(附Android实现代码)

解决WebView中网页按钮无响应的问题

嘿,我看了你的代码,发现了几个关键问题,这应该就是导致网页部分按钮点击没反应的原因,咱们一步步修复:

1. 启用JavaScript(核心问题)

你代码里的这一行:

webSettings.getJavaScriptEnabled();

只是获取当前JavaScript的启用状态,而不是开启它!绝大多数网页的交互按钮都依赖JavaScript运行,所以必须改成启用的写法:

webSettings.setJavaScriptEnabled(true);

2. 启用DOM存储支持(可选但重要)

很多现代网页会使用localStorage或sessionStorage来保存页面状态,缺少这个支持也可能导致部分交互失效,建议加上:

webSettings.setDomStorageEnabled(true);

3. 完整修改后的代码

public class browse extends AppCompatActivity {
    WebView appwebview;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_browse);
        String profileID= getIntent().getStringExtra("inputtext");
        Toast.makeText(getApplicationContext(),profileID,Toast.LENGTH_SHORT).show();
        appwebview=(WebView) findViewById(R.id.webview);
        WebSettings webSettings= appwebview.getSettings();
        // 修复:启用JavaScript
        webSettings.setJavaScriptEnabled(true);
        // 新增:启用DOM存储
        webSettings.setDomStorageEnabled(true);
        appwebview.loadUrl("https://statsroyale.com/profile/"+profileID);
        appwebview.setWebViewClient(new WebViewClient());
    }
    @Override
    public void onBackPressed() {
        if(appwebview.canGoBack())
            appwebview.goBack();
        else
            super.onBackPressed();
    }
}

额外提示

如果做完以上修改还是有部分按钮没反应,可以检查是否有网页需要打开新窗口的情况,这时候你需要重写WebViewClient的shouldOverrideUrlLoading方法,或者添加WebChromeClient来处理新窗口请求。不过先试试前面的修改,这应该能解决大部分问题。

内容的提问来源于stack exchange,提问作者Jasbin Karki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:01:51