我有一个带有上下文菜单的ListView,用户可以在其中拍照。我拍这样的照片:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
this.startActivityForResult(intent, PICTURE_RESULT);
并像这样检索它:
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == PICTURE_RESULT) {
long itemId = ???
savePicture(itemId, data.getExtras());
}
}
如何传递ListView项ID?我尝试了intent.putExtras和intent.getLongExtra,但数据不会与结果意图一起传递。我不能使用实例变量,因为如果用户在拍照时切换到横向,活动可能会被破坏。
答案 0 :(得分:3)
将该变量存储为Activity类成员,然后您可以从该Activity类的每个位置使用它。 如果要保存变量状态,则应使用onSaveInstance状态回调。请参阅开发人员文档。