首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无法从Android中的ImageView将图像保存到图库

在Android中,可以通过以下步骤将ImageView中的图像保存到图库:

  1. 首先,需要获取ImageView中显示的图像。可以通过以下代码获取ImageView的Drawable对象:
代码语言:txt
复制
Drawable drawable = imageView.getDrawable();
  1. 接下来,将Drawable对象转换为Bitmap对象。可以使用以下代码实现:
代码语言:txt
复制
Bitmap bitmap = ((BitmapDrawable) drawable).getBitmap();
  1. 然后,需要将Bitmap对象保存到图库。可以使用以下代码实现:
代码语言:txt
复制
String displayName = "image_" + System.currentTimeMillis() + ".jpg";
String mimeType = "image/jpeg";

ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.DISPLAY_NAME, displayName);
values.put(MediaStore.Images.Media.MIME_TYPE, mimeType);

ContentResolver resolver = getContentResolver();
Uri imageUri = resolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);

OutputStream outputStream;
try {
    outputStream = resolver.openOutputStream(imageUri);
    bitmap.compress(Bitmap.CompressFormat.JPEG, 100, outputStream);
    outputStream.close();
} catch (IOException e) {
    e.printStackTrace();
}

上述代码将创建一个新的图像文件,并将Bitmap对象保存到该文件中。保存成功后,图像将出现在图库中。

需要注意的是,为了执行上述操作,需要在AndroidManifest.xml文件中添加以下权限:

代码语言:txt
复制
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

这是因为保存图像需要访问外部存储空间。

推荐的腾讯云相关产品:腾讯云对象存储(COS)。

腾讯云对象存储(COS)是一种可扩展的云存储服务,适用于存储和处理任意类型的文件,包括图像、音频、视频和文档等。它提供了高可靠性、高可用性和高性能的存储解决方案,可满足各种应用场景的需求。

产品介绍链接地址:腾讯云对象存储(COS)

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android开发ImageLoder加载网络图片时图片设置为ImageView背景方法

本文实例讲述了Android开发ImageLoder加载网络图片时图片设置为ImageView背景方法。...分享给大家供大家参考,具体如下: 最近开始接触到android开发,在开发中使用ImageLoder加载网络图片,但是框架加载图片默认是通过ImageViewsrc属性设置,所以在某些场合是不符合需求...,比如通过设置src在某些场景下是不能填充满整个ImageView,但是通过设置背景就可以实现,而框架并没有提供图片设置为背景方法,我在网上找了半天也看到了一些解决方案,但不是我想要,于是我决定去看看源码是怎么实现...),所以我只需要重写这个类方法图片设置到背景就解决了 下面是BgImageViewAware类代码: /** * <pre 图片设置为ImageView背景</pre * Created...ImageView背景整个功能算是我完成了(其实很简单^_^) 更多关于Android相关内容感兴趣读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程

1.9K10

Android编程图片操作类定义与用法示例【拍照,相册选图及裁剪】

; import android.widget.Button; import android.widget.ImageView; /** * Android图片操作(拍照,相册图片选择及图片裁剪) *...上 // upload_image.setImageBitmap(bm); //把拍照图片保存到本地并转换成文件格式Uri Uri fileUri = ImageUtils.saveBitmapToSdCard...()); intent.putExtra("return-data", true);//是否数据保留在Bitmap返回dataParcelable相应Bitmap数据 startActivityForResult...:layout_height="wrap_content" android:layout_margin="10dp" android:text="本地图库上传" / <TextView android..."/ 更多关于Android相关内容感兴趣读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android

57720

Android 内存优化】Bitmap 长图加载 ( BitmapRegionDecoder 简介 | BitmapRegionDecoder 使用流程 | 区域解码加载示例 )

简介 ---- 官方文档 API : BitmapRegionDecoder BitmapRegionDecoder 简介 : ① 主要作用 : BitmapRegionDecoder 可以图像...options) 二、图片信息 ---- 一张图片存放在 assets 目录下 , 图片尺寸为 938 x 7561 , 这是 BitmapRegionDecoder 文档截图 ; 该图片如果按照默认..., 假如 BitmapRegionDecoder 对象也在使用该输入流 , 那么关闭以后 , BitmapRegionDecoder 对象也无法使用该输入流了 ; 如果设置该参数为 false , 那么关闭该输入流...// 传入临时缓存到 Native 代码 ; // 创建一个足够大临时缓存区 , 这样可以减少 is.read 方法回调次数 ; //...执行效果 : 正方形 ImageView , 显示 938 x 7561 大小图片上剪切下来 938 x 938 大小图片 , 效果如下 ; 六、源码及资源下载 源码及资源下载地址 : ①

1.4K10

图片画画板

页面布局,相对布局 按钮位于父窗体下方使用android:layout_alignParentBottom=”true” 图片位于按钮上方,填充父窗体,使用android:layout_above=...,参数:像素 调用Paint对象setColor()方法,设置画笔颜色,参数:Color.GREEN 注意要从新更新画笔位置 调用ImageView对象setImageBitmap(bitmap)...方法,把Bitmap显示到控件里 onTouch()方法一定要返回true,才能被持续执行 点击保存按钮,把图片保存到SD卡上 调用Bitmap对象compress()方法,参数:图片格式CompressFormat.JPEG...使用系统图库查看图片 此时会看不到,以为图库只有在sd卡挂载时候,才扫描文件 获取Intent对象,通过new出来 调用Intent对象setAction()方法,参数:Intent.ACTION_MEDIA_MOUNTED...; import android.view.View.OnTouchListener; import android.widget.ImageView; import android.widget.Toast

86670

Android调用系统照相机拍照与摄像方法

本篇博客介绍在Android应用,如何调用系统现有的相机应用去拍摄照片与短片,并对其进行处理,最后均会以一个简单Demo来演示效果。...类型,现有的相机应用请求一张图片。...android.media.action.VIDEO_CAPTURE:IntentAction类型,现有的相机应用请求一段视频。   ...但是在使用系统现有相机用用时候,默认会把图片保存到系统图库目录下,如果需要指定图片文件保存路径,需要额外在Intent设置。   ...在Demo,有两个Button分别以指定路径方式和不指定路径方式启动系统相机,并获取返回值显示到ImageView,Demo中注释比较详细,这里不再累述了。

6.8K21

Android开发实现ImageView加载摄像头拍摄大图功能

本文实例讲述了Android开发实现ImageView加载摄像头拍摄大图功能。分享给大家供大家参考,具体如下: 这个方法是官方demo摘录,在此记录学习。...Bitmap bitmap = BitmapFactory.decodeFile(mCurrentPhotoPath, bmOptions); /* Associate the Bitmap to the ImageView...*/ takePhotoThenToShowImg.setImageBitmap(bitmap); galleryAddPic(); } } 最后可以拍摄到照片添加到Media Provider...数据库,以便图库或者其他程序读取照片 /** * 拍摄到照片添加到Media Provider数据库 */ private void galleryAddPic(){ Intent mediaScanIntent...相关内容感兴趣读者可查看本站专题:《Android拍照与图片处理技巧总结》、《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总

56910

Android编程实现保存图片到系统图库方法示例

保存图片到指定路径/sdcard/Boohee/下,文件名以当前系统时间命名,但是这种方法保存图片没有加入到系统图库 第二种是调用系统提供插入图库方法: 复制代码 代码如下: MediaStore.Images.Media.insertImage...(getContentResolver(), bitmap, “title”, “description”); 调用以上系统自带方法会把bitmap对象保存到系统图库,但是这种方法无法指定保存路径和名称...看似上述第二种方法就是我们要用到方法,但是可惜调用上述第二种插入图库方法图片并没有立刻显示在图库,而我们需要立刻更新系统图库以便让用户可以立刻查看到这张图片。...终极完美解决方案 那么到这里可能有人又会问了,如果我想把图片保存到指定文件夹,同时又需要图片出现在图库里呢?...相关内容感兴趣读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android基本组件用法总结》、

77031

常用控件之ImageView使用(一)

ImageView可以适用于任何布局,并且Android为其提供了缩放和着色一些操作。 一....对于 android:scaleType属性,因为关于图像ImageView显示效果,所以有如下属性值可以选择: matrix:使用 matrix方式进行缩放。...fitXY:横向、纵向独立缩放,以适应该 ImageView; fitStart:保持纵横比缩放图片,并且图片放在 ImageView左上角; fitCenter:保持纵横比缩放图片,缩放完成后图片放在...加载SD卡图片 在上述,只是简单介绍加载资源文件图片以及ImageView一些基本属性,接下来,我们为大家讲解如何加载SD卡图片,并且我们考虑到部分小伙伴对Android很感兴趣,但是都是使用自己手机来进行调试...首先,我们开发者要知道,Android 6.0(API 23)开始,对系统权限做了很大改变。

1.6K20

【译】Callback,Notification与RemoteView

fetch(),get()与target之间区别与联系 .fetch()会在后台线程异步加载图片,但不会展示到ImageView上,也不会返回该图片对象。它只会把图像存到磁盘或内存。...在Picasso概念它们被称为Target。 使用Target实现回调机制 到目前为止,我们一直使用ImageView作为.into()参数。这并不是.into()函数全部用法。...和之前加载方式一样,只不过不再将图像直接展示到ImageView上,而是通过Target回调,返回Bitmap对象(或者异常)。 来看一个示例。...切记:总是target实例作为字段属性存在,而不是匿名类!否则GC会销毁target对象,并且永远无法获得图像结果(译者注:这里target会被作为WeakReference而存在)。...我们不再详细介绍,因为这并不属于本系列博客范畴。我们感兴趣是下一步:加载图像ImageView。 Picasso调用非常简单。

76810

Android开发,怎样调用摄像机拍照以及怎样本地图库中选取照片

大家好,又见面了,我是你们朋友全栈君。 这是属于我第一篇博文,首先说明一下,文章属性为原创,其实不能说是原创,我是在学习过程根据自己理解整理。...当然,还有第二种方法,就是在本地图库选取已经被保存图片。...现在,我就根据自己学习过程,这部分只是进行整理,如下: public class MainActivity extends AppCompatActivity { private Button...");//这个intent对象是用于开启本地图库 intent.setType("image/*");//给intent对象设置必要参数...,就是要获取图片真实路径imagepath,然后我们会再提供一个方法imagepath作为参数来显示图片 String imagepath = null; //android4.4

60430

android之实现打开相册、拍照录像、播放视频、保存图片到系统相册指定位置、图片压缩

intentextra部分包含一个编码过Bitmap, // 拍完图片是不会保存到本地, 我们可以自己写代码把图片保存到我们SD卡里,然后再显示,这样图片会清晰很多....保存图片到指定路径/sdcard/Boohee/下,文件名以当前系统时间命名,但是这种方法保存图片没有加入到系统图库 public static File saveImage(Bitmap bmp...bitmap对象保存到系统图库, 但是这种方法无法指定保存路径和名称, 上述方法title、description参数只是插入数据库字段, 真实图片名称系统会自动分配。...插入图库方法图片并没有立刻显示在图库,而我们需要立刻更新系统图库以便让用户可以立刻查看到这张图片。...如发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站立刻删除。

5.2K20

实例演示Android异步加载图片

我们演示过程是异步服务器上下载5张不同图片,依次放入这5个ImageView。...当有线程任务时,池中取一个,执行完成后线程对象归池,这样可以避免反复创建线程对象所带来性能开销,节省了系统资源。 下面的演示例子是创建一个可重用固定线程数线程池。...url地址 33 * @param callback 34 * 回调接口 35 * @return 返回内存缓存图像,第一次加载返回null 36...softReference.get(); 47 } 48 } 49 // 缓存没有图像,则从网络上取出数据,并将取出数据缓存到内存 50...void imageLoaded(Drawable imageDrawable); 95 } 96 } 说明: final参数是指当函数参数为final类型时,你可以读取使用该参数,但是无法改变该参数

1.4K50

实例演示Android异步加载图片

我们演示过程是异步服务器上下载5张不同图片,依次放入这5个ImageView。...当有线程任务时,池中取一个,执行完成后线程对象归池,这样可以避免反复创建线程对象所带来性能开销,节省了系统资源。 下面的演示例子是创建一个可重用固定线程数线程池。...url地址 33 * @param callback 34 * 回调接口 35 * @return 返回内存缓存图像,第一次加载返回null 36...softReference.get(); 47 } 48 } 49 // 缓存没有图像,则从网络上取出数据,并将取出数据缓存到内存 50...void imageLoaded(Drawable imageDrawable); 95 } 96 } 说明: final参数是指当函数参数为final类型时,你可以读取使用该参数,但是无法改变该参数

1.3K80

android 优化之Bitmap优化

而Bitmap生成是通过malloc进行内存分配,占用是C内存,这个也就说明了,上述4MBitmap无法生成原因, 因为在13M被Java用过后,剩下C能用只有3M了。...在Android应用里,最耗费内存就是图片资源。 在Android系统,读取位图Bitmap时,分给虚拟机图片堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。...对象 return defaultBitmapMap; } 缓存通用Bitmap对象 压缩图片 如果图片像素过大可以图片缩小,以减少载入图片过程内存使用,避免异常发生。...以Gallery获取一个图片为例讲解缩放: public class MainActivity extends Activity { private ImageView iv;...) findViewById(R.id.iv); } // 系统图库里面 获取一张照片 public void click(View view) { Intent

1.3K70

教育系统APP(四)

“我”模块 掌握修改密码功能开发,实现用户密码修改 掌握设置密功能开发,并且通过密可以找回用户密码 挑战任务 初次打开页面都是Fragment_1,请修改相关代码,让初始打开页面为Fragment...学习目标 掌握修改密码功能开发,实现用户密码修改; 掌握设置密功能开发,并且通过密可以找回用户密码。...当用户登录成功后,可以修改密码以及设置密,且只有设置过密帐户才可以找回密码。.../> 修改完成后,我们试着运行一下,点击底部导航栏“我”,一个毫无互动页面就出来啦。...android:text=" 存"/> 生成activity文件,ModifyPswActivity.java 注意:在submit方法,密码修改成功之后除了把当前页面关了

1.2K10

OpenCV | 基于Android系统详析Mat与Bitmap对象(创建、初始化、使用与转换 | 附大量demo)

---- 1.1 加载图片与读取基本信息 Android系统中选择一张图像时,可以使用如下代码图像文件加载为Mat对象: Mat src = Imgcodecs.imread(fileUri.getPath...使用如下代码Mat对象得到图像宽、高、维度、通道数、深度、类型信息: int width = src.cols(); int height = src.rows(); int dims = src.dims...Mat对象Java层到C++层指针传递; 如图是Mat在内存结构: ?...,vType.CV_8UC3声明图像是RGB彩色三通道图像、每个通道都是8位; 第二行代码是指定图像每个像素点、每个通道灰度值为127; 第三行代码是使用imwrite图像存到手机指定目录下...4.2 内存与显示 在Android系统图像资源文件直接加载为OpenCVMat对象,可以避免Bitmap加载大图像出现OOM问题; 使用Mat对象对图像完成操作之后,所有的临时Mat对象都应该调用

6.5K63
领券