美文网首页
拍照或选择图片库中的图片

拍照或选择图片库中的图片

作者: likaizzk | 来源:发表于2016-05-19 18:20 被阅读76次

    #######不管是是使用相机还是从相册中选择都需要先设置可选图片的最大数量

    BitmapHelper.setMaxCount(4);   // 默认值是4
    

    1、使用相机拍照

    1.1、启动系统相机

    方法1:获得调用相机的Intent对象,然后启动该Intent对象

    Intent intent = BitmapHelper.getPhotographIntent(); 
    startActivityForResult(intent, 0x123);
    

    方法2:方法2就是对方法1的封装

    BitmapHelper.callCamera(self, 0x123);
    

    1.2、在Activity.onActivityResult中拦截结果

    方法1

    BitmapHelper.sendBroadcastRescan(self);
    Bitmap bitmap = BitmapUtils.getBitmap(BitmapHelper.getPhotographPath(), false, screenWidth, screenHeight);
    Image takePhoto = new Image();
    takePhoto.setPath(BitmapHelper.getPhotographPath());
    takePhoto.setBitmap(bitmap);
    BitmapHelper.getImageList().add(takePhoto);
    

    方法2

    BitmapHelper.execCameraResult(self);
    

    此时拍摄的照片已经保存到了BitmapHelper的imageList中,可以用下面的语句得到:

    BitmapHelper.getImageList();
    

    2、相册中选择图片

    2.1启动相册选择器

    方法1

    Intent intent = new Intent(context, AlbumActivity.class);
    if(clazz != null) {    
        BitmapHelper.clazz = clazz;
    }
    context.startActivity(intent);
    

    方法2

    BitmapHelper.callAlbum(self, WCertificateAddActivity.class);
    

    2.2、获取选中的图片

    BitmapHelper.getImageList();
    

    2.3、销毁BitmapHelper

    BitmapHelper.destory();
    

    3、GalleryActivity的使用说明

    在启动该Activity时一定要传递的参数

    • is_image(Required)
      true表示使用BitmapHelper中的imageList操作;
      false表示使用BitmapHelper中的tempImageList操作;
    • index(Optional)
      不传时默认为零(0)

    相关文章

      网友评论

          本文标题:拍照或选择图片库中的图片

          本文链接:https://www.haomeiwen.com/subject/lpljrttx.html