从我Activity
的扩展SherlockFragmentActivity
(来自优秀的ActionBarSherlock
库)中,我提出了一个简单的请求以从相机中获取图像:
public void getPhoto() {
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
// .....
}
执行时,在相机应用程序打开时(在拍照之前)以零(和匹配的)onActivityResult()
调用。如果我再拍照并接受它,就不叫了。resultCode
requestCode
onActivityResult()
我知道Fragment
支持库中存在类似的错误,但我在Fragment
和中看到了这个问题Activity
。
我已经检查过并且我正在调用正确的startActivityForResult()
(即 onFragment
或Activity
),并且我已经在我能想到的所有地方逐步完成了代码。我开始怀疑 Support Library 错误意味着onActivityResult
没有被调用是否Fragment
也会影响Activity
使用时ActionBarSherlock
,但我不敢相信 ABS 会中断onActivityResult()
。
我错过了什么?