[英]startActivityForResult not working in fragment and not start an activity
我試圖在我的片段中啟動startActivityForResult
,我這樣做:
public class MyFragment extends Fragment {
.....
new GetNidBase(getContext(), code, Integer.parseInt(_newBlock.split("-")[3]),
WKT1, user, cookie, permissions, _newBlock, (nidBase) -> {
if (!TextUtils.isEmpty(nidBase)) {
Intent intent = new Intent(requireContext(), FormSaveDocument.class);
intent.putExtra(BaseFragment.ARG_COOKIE, HttpUtil.serializeCookie(cookie));
intent.putExtra(BaseFragment.ARG_USER, common.Utils.compactUserInstance(user));
intent.putExtra(BaseFragment.ARG_PERMISSIONS, GsonUtil.createGson().toJson(permissions));
startActivityForResult(intent, INTENTRESULT);
}
我想在片段的onActivityForResult()中處理我的結果但是我想知道, FormSaveDocument
沒有啟動? FormSaveDocument
是一個活動類!! startActivityForResult(intent, INTENTRESULT)
不起作用。
我也試過這個:
MyFragment.this.startActivityForResult(intent, INTENTRESULT);
這是我片段中的onActivityResult
:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data){
if (requestCode == INTENTRESULT && resultCode == 20) {
saveDraw();
}
}
更新
這是myActivity和FormSaveDocument清單信息:
<activity
android:name=".activity.MainActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<activity
android:name=".forms.FormSaveDocument"
android:configChanges="keyboardHidden|orientation|screenSize" />
</activity>
在您的活動中您獲得結果的位置必須使用與用於添加Fragment的片段相同的對象。
請用
startActivityForResult(intent, INTENTRESULT);
調用MyFragment.this.startActivityForResult(intent, INTENTRESULT);
從你的片段,和
然后在你的片段中處理onActivityResult()
之后
這將使您回調片段
另一種方案是:
處理活動中的onActivityResult
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
try {
getCurrentFrg().onActivityResult(requestCode,resultCode,data);
}catch (Exception e){
e.printStackTrace();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.