首页 > 解决方案 > 如何使用 setResult 从 Activity 中获取 Fragment 的值?

问题描述

单击片段中的个人资料图像,转到个人资料活动。现在在 backPress 上完成活动并返回片段。现在在片段中,我如何从我在关闭活动时传递的 setResult 中获取值,如下面的代码所示:

活动代码:

 private void closeActivity(boolean isFollowClicked) {
    Intent resultIntent = new Intent();
    resultIntent.putExtra(Constants.BUNDLE_GRP, isFollowClicked);
    setResult(Activity.RESULT_OK, resultIntent);
    finish();
}

@Override
public void onBackPressed() {
    closeActivity(isFollowClick);
}

如何在 Fragment 中获取 setResult 值?

标签: androidfragmentonactivityresultstartactivityforresult

解决方案


相反,startActivity(intent)您需要startActivityForResult(intent, YOUR_REQUEST_CODE)从同一个片段类 override 调用 and onActivityResult(...)

在目标活动中按“返回”后,onActivityResult(...)将使用结果调用 - 验证请求代码然后处理结果。


推荐阅读