0

我知道如何拍照并将其设置为 ImageView 的基础知识。

photo = (Bitmap) data.getExtras().get("data");
imageView.setImageBitmap(photo);

我想做的远不止这些。

我将它保存到 SD 卡上的文件夹中。我已经成功地做到了这一点:

// intent
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
startActivityForResult(intent, CAMERA_REQUEST);

这是我的下一个问题:

不知道该怎么做:接下来我想做什么:下次我来 thisActivity时,我想检查该图像是否存在并将其分配给 that imageView

4

2 回答 2

1

您必须使用某种持久性存储来引用文件以检查它是否存在。我只是将它作为字符串存储在首选项中并读取它,然后检查它是否存在等等。从onCreate().

于 2013-03-12T21:42:06.360 回答
1

最近几天,我在我的一个应用程序中遇到了这个问题。

我会在这里尝试解释一下我所做的事情。

  1. 尝试将图片完整路径保存到存储区域或共享首选项。
  2. 下次如果您调用您的活动,请检查图片是否已经存在以及是否可以使用它。
  3. 在您的 xml 布局中准备一个具有 visibility="gone" 的 ImageView,如果点 (2.) 为真,那么您可以将可见性更改为可见并在视图中设置图像。
  4. 如果点 (2.) 为假,则切换到相机视图 (SurfaceView) 以拍摄新照片
于 2013-03-12T21:43:30.073 回答