不能调用onActivityResult在片段

问题描述 投票:0回答:1

有一个主类mainActivity。和碎片。

在片段中的一个谷歌地图。功能是这样的:

关闭地理位置并打开应用程序后,将发送请求以进行位置检测,并且片段中的onActivityResult方法应重新启动。

但是当我允许访问该位置时,onActivityResult方法仅在MainActivity中有效。

请告诉我如何解决这种情况下如何运行的片段的方法是什么?谢谢您的帮助!

我的尝试,但是该方法仍然无法解决:

主要活动

 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        for (Fragment fragment : getSupportFragmentManager().getFragments()) {
            fragment.onActivityResult(requestCode, resultCode, data);
        }
    }

MapFragment

  // Get the current location of the device and set the position of the map.
    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == 51) {
            if (resultCode == RESULT_OK) {
                getDeviceLocation();
            }
        }
        super.onActivityResult(requestCode, resultCode, data);

    }
android
1个回答
0
投票

尝试添加super.onActivityResult(requestCode, resultCode, data);下面,因为它的呼叫超级方法首先。

主要活动

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    for (Fragment fragment : getSupportFragmentManager().getFragments()) {
        fragment.onActivityResult(requestCode, resultCode, data);
    }

    super.onActivityResult(requestCode, resultCode, data); //Add Here
}

我希望这可以帮助您!

© www.soinside.com 2019 - 2024. All rights reserved.