android拍照和选择照片(单张)出现照片无法加载的问题

有一段时间没有使用从相册选择照片以及拍照功能了,正好这个项目用到了,就翻出原来的demo试了试,发现从相册选择照片的时候,回传会出现“照片无法加载”的情况。上网找了找,发现是android版本的问题,sdk低于19时需要使用另一种方法。于是上网搜了搜,只需要在选择照片的时候判断一下即可,很简单,如下代码。
private void showPhoto1Dialog() {
        String[] avatar = { "相册", "拍照" };
        ActionSheetDialog dialog = new ActionSheetDialog(this).builder()
                .setCancelable(true).setTitle("操作")
                .setCanceledOnTouchOutside(true);
        dialog.setItems(avatar, new OnSheetItemClickListener() {

            @Override
            public void onClick(int which) {
                if (which == 0) {
                    Intent intentFromGallery;
                    //当sdk版本低于19时使用此方法
                    if (Build.VERSION.SDK_INT < 19) {
                        intentFromGallery = new Intent(
                                Intent.ACTION_GET_CONTENT);
                        intentFromGallery.setType("image/*");
                    } else {

                        intentFromGallery = new Intent(

                                Intent.ACTION_PICK,
                                android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);

                    }

                    startActivityForResult(intentFromGallery,
                            IMAGEa_REQUEST_CODE);

                } else if (which == 1) {
                    Intent intentFromCapture = new Intent(
                            MediaStore.ACTION_IMAGE_CAPTURE);
                    // 判断存储卡是否可以用,可用进行存储
                    if (hasSdcard()) {
                        PhotoAFile = new File(Environment
                                .getExternalStorageDirectory(),
                                IMAGEa_FILE_NAME);
                        intentFromCapture.putExtra(MediaStore.EXTRA_OUTPUT,
                                Uri.fromFile(PhotoAFile));
                    }
                    startActivityForResult(intentFromCapture,
                            CAMERa_REQUEST_CODE);

                }
            }
        });
        dialog.show();
    }

上面只是选择照片时的一小部分代码,由于这个demo在网上搜的话基本上是“烂大街”的写法,别的地方没什么区别。还有一点,这个解决方法是我看到别人的,具体是谁的时间久了我忘记了,所以没有标注出处,所以请原作者谅解或者联系我标注,谢谢。好代码,大家分享。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值