有一个主类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);
}
尝试添加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
}
我希望这可以帮助您!