Webview通过Android应用程序中的选项菜单

时间:2017-09-18 18:44:21

标签: android webview

当选择了选项菜单中的选项时,我一直在尝试在webView中打开URL。为简单起见,我首先尝试选择任何选项,A传递硬编码字符串传递给“passUrl”中的webView活动。我正在使用putExtra()将URL传递给'webViewShow'活动。

这是我的选项菜单存在的第一个活动的代码:

public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    String url = "http://kavishala.in/about-us";

    Intent webView = new Intent(MainActivity.this, InAppWebView.class);
    getIntent().putExtra("passedUrl",url);
    startActivity(webView);
    return true;
}

现在我正在传递URL的'webViewShow'活动的java代码:

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

    final String url = getIntent().getExtras().getString("passedUrl");
    WebView window = (WebView) findViewById(R.id.WebWindow);
    window.setWebViewClient(new WebViewClient());
    window.loadUrl(url);
}

我在创建WebView并将'passedUrl'加载到其中。

编译和结果:应用程序构建成功。一切顺利,直到我运行应用程序并从选项菜单中选择一个选项。从选项菜单中选择后会崩溃。选择后会出现一个空白屏幕,但我认为它表明“webViewShow”活动已经启动但无法加载URL。

1 个答案:

答案 0 :(得分:0)

更改此

  Intent webView = new Intent(MainActivity.this, InAppWebView.class);
  getIntent().putExtra("passedUrl",url);
  startActivity(webView);

  Intent webView = new Intent(MainActivity.this, InAppWebView.class);
  webView.putExtra("passedUrl",url);
  startActivity(webView);