前言:
Android 开发中Frafment是经常用到的,有时会在fragment中跳转到另外的activity中,然后关闭activity时返回参数,根据返回参数更新fragment中的UI;
但是遇到了onActivityResult方法不被调用的问题。
1 . 问题:启动fragment时使用了getActivity().startActivityForResult(intent, 0) ;
Intent intent = new Intent(getActivity(), LandActivity.class);
getActivity().startActivity(intent);
Intent intent = new Intent(getActivity(), LandActivity.class);
startActivityForResult(intent, 0);
接受返回的参数:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
String result = data.getExtras().getString("result");// 得到新Activity
// Toast.makeText( getActivity(),result, 1).show(); // 关闭后返回的数据
// person_name.setText(result);
MeFragment meFragment = new MeFragment();
//
if (!TextUtils.isEmpty(result)) {
person_name.setText(result);
PrefUtils.putString(getActivity(), "person_name", result);
}
}