我正在构建一个需要照相机的应用程序,拍摄照片并将照片保存在内部存储目录中。到目前为止,我已经完成了这一部分,并且已经创建了图像文件路径。我有几张从相机拍摄的图像,然后保存在该文件目录中, 我的问题是我想在一个新的Activity类Image Holder中显示那些图像。 我该怎么做?
答案 0 :(得分:0)
通过单击或用于启动新“活动”的任何事件侦听器,将具有所选图像名称的文件路径发送给新“活动”。然后,从初始活动中检索具有意图发送的文件路径和图像名称的图像。 请在清单文件中添加“ android.permission.READ_EXTERNAL_STORAGE”。
public static void downloadImage(String fileName, ImageView image, Context context){
File downloadFolder = Environment.getExternalStorageDirectory();
File dir = new File(downloadFolder+ "/PopularMovie/");
Uri downloadPath = Uri.fromFile(new File(dir, "/" + fileName + ".png/"));
if (downloadPath.toString() != null){
Picasso.with(context).load(downloadPath).placeholder(R.drawable.placeholder_image).into(image);
} else {
Toast.makeText(context, "There is no image of this name saved",
Toast.LENGTH_LONG).show();
}
}
请注意,我已经使用了Picasso库,您的应用程序可能未使用Picasso。您可以修改代码以适合您的情况。另外,我将图像加载到ImageView中。
由于您说过知道文件名的文件路径,因此您可能不需要编写上面的代码,只需按如下所示调用Picasso;
if (downloadPath.toString() != null){
Picasso.with(context).load(downloadPath).placeholder(R.drawable.placeholder_image).into(image);
}
答案 1 :(得分:0)
将图像保存在特定路径中,然后在“下一步”活动中使用相同的路径和保存的图像名称调用图像。 查看下面的链接
可能会帮助您。
https://stackoverflow.com/a/7266616/8311908
http://www.zoftino.com/android-capture-image-from-camera-and-save
https://stackoverflow.com/a/4182060/8311908
https://www.androidbegin.com/tutorial/android-display-images-from-sd-card-tutorial/