使用 Intent.createChooser() 启动共享菜单时如何阻止 Activity 重新加载?

How to stop Activity from reloading when using Intent.createChooser() to launch a sharing menu?

我有一个 WebView,它在页面底部有一个共享图标。

当用户按下图标时,它会启动一个共享菜单:

chooserIntent = Intent.createChooser(targetedShareIntents.remove(0), "Share via");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, targetedShareIntents.toArray(new Parcelable[]{}));
startActivityForResult(chooserIntent, SHARING_MENU);

共享菜单弹出后,如果用户按下后退按钮或在共享菜单外单击,它会关闭,但 Activity 会重新启动,网页会在 webview 中重新加载。

我想阻止它。我尝试在 onActivityResult 中实现以下代码,但它不起作用

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // Check which request we're responding to
        if (requestCode == SHARING_MENU) {
            // Make sure the request was successful
            if (resultCode == RESULT_CANCELED) {
                webviewObj.stopLoading();
                this.finishActivity(SHARING_MENU);
            }
        }
    }

我尝试在清单文件中添加 - android:launchMode="singleInstance",但它不起作用。

请帮忙!!!

我找到了解决这个问题的简单方法。

在 WebView 的 Activity 中,我在 :-

中添加了 UI 初始化代码
@Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.webview);

        if(savedInstanceState == null) {
            initUI();
        }           
    }

这解决了我的问题:)