onActivityResult для фрагмента
В настоящее время у меня есть базовая активность, которая содержит один фрагмент. Внутри фрагмента у меня есть метод, который запускает выбор контактов.
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);
тогда это работает, но другие сообщения заставили меня думать, что это неправильно.