• Android图片处理


      如何把Android内存中的图片保存下来,估计困过不少小伙伴吧,今天带领大家实现一下如何获取内存中的图片。

      问题描述:当我们使用Viewpage展示图片时,如何当用户滑动欣赏时,将自己喜欢的照片保存下来呢?

      问题解决方式:当我们看到图片时,图片这是就存在于手机内存中,我们自需要将其下载到本地即可,具体的实现,请看代码:

    //将商品展示的照片从内存下载下来
    LinearLayout v = (LinearLayout) pageViewsPhoto.get(delImageNumber);//获得图片的视图
      if(v != null) {
         ImageView image = (ImageView)v.getChildAt(0);//获得视图里面的图片控件
      if(image != null){
        BitmapDrawable drawable = (BitmapDrawable) image.getDrawable();//通过图片控件获得图片
      if(drawable != null) {
        Bitmap bmpIcon = drawable.getBitmap();//将图片转换为Bitmap
    }}}
    pageViewsPhoto是我们的ViewPage控件,delImageNumber就是我们打算下载的那张,在ViewPage中显示的数目

    到这里关于图片的下载就已经完成了,我们得到的是图片的Bitmap格式,下面再给大家介绍一下如何缩放图片的大小

    ThumbnailUtils :是谷歌提供的一个缩放图片的类
    ThumbnailUtils t = new ThumbnailUtils();
    bmpIcon = t.extractThumbnail(bmpIcon,200,200);//图片缩放--Android自带方法

    我们如何将图片保存到手机本地呢?

    //保存照片到手机本地
        public static String saveBitmap(String dir, String path, Bitmap bmp) {
            String picturePath = null;
            File fDir = new File(dir);
            if(fDir.exists() == false) 
                fDir.mkdirs();
            
            File f = new File(path);
                    
            FileOutputStream fOut = null;
            try {
                fOut = new FileOutputStream(f);
    //            bmp = reduce(bmp, 200, 200, false);//尺寸压缩
                bmp.compress(Bitmap.CompressFormat.JPEG, 80, fOut);
                
                fOut.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
            
            if (f.exists()) {
                Log.d("123", "123");
            } else {
                Log.d("123", "123");
            }
            
            picturePath = f.getAbsolutePath();
            
            return picturePath;
        }




  • 相关阅读:
    20、职责链模式
    19、命令模式
    18、桥接模式
    17、单例模式
    javascript移动端实现企业图谱总结
    前端用js模拟疫情扩散开发总结
    移动端企业图谱开发兼容性等问题踩坑
    js实现企业图谱(pc端企业图谱项目总结与踩坑分享)
    基于vue脚手架的项目打包上线(发布)方法和误区
    实现一个网页版的聊天室(类似于钉钉群)
  • 原文地址:https://www.cnblogs.com/AndroidJotting/p/4898327.html
Copyright © 2020-2023  润新知