转自
:今天写的程序用了FragmentActivity和Fragment。在Fragment中使用startActivityForResult起了一个activity,activity运行完返回结果后Fragement的onActivityResult却不会被调用。override了host fragment的FragmentActivity的onActivityResult,发现onActivityResult在这里可以被调用到。Fragment中调用:
Intent imgPickerIntent= new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);startActivityForResult(imgPickerIntent, 1234);
原因:返回的result先传至Fragment的host FragmentActiivity。这个FragementActivity的onActivityResult函数必须调用super.onActiivtyResult()。super.onActiivtyResult会将未被处理的result消息继续传给其host的fragement的onActiivtyResult。