通过单击图像视图中的图像从应用程序下载图像并保存在内部存储中

时间:2016-05-12 20:21:13

标签: android

我从服务器下载图像并将其设置在图像视图中。它工作正常,但现在我想通过点击图像视图将此图像保存到内部存储。有没有解决方案呢。 提前谢谢

2 个答案:

答案 0 :(得分:0)

你能带些代码,比如ImageView的实例化吗?会让每个人都更容易帮助你。

因为它是从头开始,我会给你一个通用的响应元素。 假设您已将ImageView实例化为 mImageView

mImageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                 //Put in internal storage
            }
        });

并且不要忘记在图像布局(XML文件)中设置以下内容:

android:clickable="true"

对于存储部分,我不会解释比已经存在的更好:https://developer.android.com/guide/topics/data/data-storage.html#filesInternal

答案 1 :(得分:0)

在ImageView上创建onClick侦听器并调用方法来下载图像。您可以使用此示例进行下载并保存图像:

   OutputStream fOut = null;
    try {

        String path = Environment.getExternalStorageDirectory().toString();
        File file = new File(path, "myCollage.jpg"); // the File to save to
        fOut = new FileOutputStream(file);

        Bitmap bitmap = ((BitmapDrawable)imageView.getDrawable()).getBitmap();

        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fOut);
        fOut.flush();
        fOut.close(); // do not forget to close the stream

        MediaStore.Images.Media.insertImage(getContentResolver(), file.getAbsolutePath(), file.getName(), file.getName());


    }catch (IOException ex) {
        ex.printStackTrace();
    }