我有一个带有一个片段的活动,然后该片段调用某个活动,该活动将向第一个活动提供一些值。我使用onActivityResult,但我不知道为什么resultCode始终为0,data始终为零。
在第一个活动中,我有:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.d(TAG, "onActivityResult: "+ requestCode +" "+resultCode+" "+data);
}
Activity one包含一些名为fragmentX的片段,这些片段调用了activity two。
private final int REQUEST_CODE = 10;
private void start (){
Intent intent = new Intent(getContext(),Main2Activity.class);
intent.putExtra("xxx","test1");
getActivity().startActivityForResult(intent,REQUEST_CODE);
}
然后在第二个活动中,当我点击返回按钮时,会传递一些值。
public class Main2Activity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
}
@Override
public void onBackPressed() {
super.onBackPressed();
Intent intent = getIntent().putExtra("yyy","test2");
setResult(RESULT_OK,intent);
}
}
但是,我不知道为什么,在onActivityResult中我无法获取数据。 我的最终目的是将该数据设置为FragmentX的argument。