onActivity Fragment 的结果
2022-09-01 06:41:28
我目前有一个基本活动,它托管一个片段。在片段中,我有一个启动联系人选择器的方法。
private void chooseContacts() {
Intent pickContactIntent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);
pickContactIntent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE);
startActivityForResult(pickContactIntent, PICK_CONTACT_REQUEST);
}
当此活动返回时,我应该如何捕获结果。我已尝试添加
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//Handle Code
}
到我的基本活动和片段,但两种方法都没有被触发。如果可能的话,我希望让片段处理返回,以免混淆活动。
请让我知道在这种情况下的最佳实践是什么。
更新:
如果我更改:
startActivityForResult(pickContactIntent, PICK_CONTACT_REQUEST);
自
getActivity().startActivityForResult(pickContactIntent, PICK_CONTACT_REQUEST);
然后它的工作原理,但其他帖子让我认为这是不正确的。