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());
    }

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...