微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 从图库中选择多个图像

我是Android的初学者.

我想从图库中选择多个图像,并将它们视为水平滚动视图.目前,我可以选择单个图像并进行查看.我已经引用了一个imageView的id用于查看目的.但谷歌搜索“选择多个图像”让我意识到我需要使用GridView,Recycler view或listview.我仍然不清楚解决方案.有帮助吗?

解决方法:

启动活动以选择具有此意图的图像

Intent intent = new Intent();
intent.setType("image/*");

intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);

intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Picture"), UploadingHelper.REQUEST_CODE);

然后选择您想要的任意数量的图像,然后选择您的活动结果

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT && intent.getClipData() != null) {
            int numberOfImages = intent.getClipData().getItemCount();
for (int i = 0; i < numberOfImages; i++) {
try {
      ImageData imageData = new ImageData();
      imageData.uri = intent.getClipData().getItemAt(i).getUri();

      Bitmap bitmap = getBitmap(intent.getClipData().getItemAt(i).getUri());
     imageData.icon = Bitmap.createScaledBitmap(bitmap, getPixelsFromDP(widthOfImages), getPixelsFromDP(widthOfImages), false);

      images.add(imageData);
      } catch (Exception e) {
              Logger.log(e);
           }
      }

}

这是使用的Image Data类.

public class ImageData {
        public Bitmap icon;
        public Uri uri;
}

对不起,我忘了添加方法

private int getPixelsFromDP(float dp) {
        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp,  Resources.getSystem().getdisplayMetrics());
    }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐