zoukankan      html  css  js  c++  java
  • 从 相机 或者相册 获取图片显示在ImageView 上

    不错的帖子:

    Android自定义Menu,所有功能已经完善
    http://www.eoeandroid.com/thread-246336-1-1.html

    Android 仿QQ客户端及服务端源码
    http://www.eoeandroid.com/thread-246259-1-1.html

    [毕业设计源码福利]QQ音乐1.6+android无线点餐系统(4.0调试慎重)
    http://www.eoeandroid.com/thread-245953-1-1.html

    ------------------------帖子正文-----------------------

    内容:可以从相机 或者 相册中获取照片 ,然后显示Imageview上

    // 获得图片的uri
                                            Uri originalUri = data.getData();
                                            // 将图片内容解析成字节数组
                                            mContent = readStream(resolver.openInputStream(Uri
                                                            .parse(originalUri.toString())));
                                            // 将字节数组转换为ImageView可调用的Bitmap对象
                                            myBitmap = getPicFromBytes(mContent, null);
                                            // //把得到的图片绑定在控件上显示
                                            imageView.setImageBitmap(myBitmap);
    String sdStatus = Environment.getExternalStorageState();
                                    if (!sdStatus.equals(Environment.MEDIA_MOUNTED)) { // 检测sd是否可用
                                            return;
                                    }
                                    Bundle bundle = data.getExtras();
                                    Bitmap bitmap = (Bitmap) bundle.get("data");// 获取相机返回的数据,并转换为Bitmap图片格式
                                    FileOutputStream b = null;
                                    File file = new File("/sdcard/myImage/");
                                    file.mkdirs();// 创建文件夹,名称为myimage
     
                                    // 照片的命名,目标文件夹下,以当前时间数字串为名称,即可确保每张照片名称不相同。
                                    String str = null;
                                    Date date = null;
                                    SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");// 获取当前时间,进一步转化为字符串
                                    date = new Date();
                                    str = format.format(date);
                                    String fileName = "/sdcard/myImage/" + str + ".jpg";
                                    try {
                                            b = new FileOutputStream(fileName);
                                            bitmap.compress(Bitmap.CompressFormat.JPEG, 100, b);// 把数据写入文件
                                    } catch (FileNotFoundException e) {
                                            e.printStackTrace();
                                    } finally {
                                            try {
                                                    b.flush();
                                                    b.close();
                                            } catch (IOException e) {
                                                    e.printStackTrace();
                                            }
                                            if (data != null) {
                                                    Bitmap cameraBitmap = (Bitmap) data.getExtras().get(
                                                                    "data");
                                                    System.out.println("fdf================="
                                                                    + data.getDataString());
                                                    imageView.setImageBitmap(cameraBitmap);
     
                                                    System.out.println("成功======" + cameraBitmap.getWidth()
                                                                    + cameraBitmap.getHeight());
                                            }
     
                                    }
                            }
                    }

  • 相关阅读:
    C#中的Dictionary的使用
    关于加密和解密的方法
    单链表逆置
    稀疏矩阵存储
    数组内存地址
    堆和栈的区别
    vc++6.0快捷键
    springMvc-02
    SpringMvc-01
    数据库字段设置问题,具体问题具体分析
  • 原文地址:https://www.cnblogs.com/vus520/p/2856086.html
Copyright © 2011-2022 走看看