Java 从gallery中选择多个图像并显示在viewpager中
我有一个应用程序,我需要从gallery中选择多个图像并在viewpager中显示它们。我只选择了一个图像,并将其显示在图像视图中,如下所示:Java 从gallery中选择多个图像并显示在viewpager中,java,android,Java,Android,我有一个应用程序,我需要从gallery中选择多个图像并在viewpager中显示它们。我只选择了一个图像,并将其显示在图像视图中,如下所示: private void chooseImage() { Intent openGalleryIntent = new Intent(); openGalleryIntent.setType("image/*"); openGalleryIntent.putExtra(Intent.EXTRA_ALLOW_
private void chooseImage() {
Intent openGalleryIntent = new Intent();
openGalleryIntent.setType("image/*");
openGalleryIntent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
openGalleryIntent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(openGalleryIntent, "Select Picture"), GALLERY_REQUEST_CODE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == GALLERY_REQUEST_CODE && resultCode == RESULT_OK && data != null && data.getData() != null) {
Uri uri = data.getData();
try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), uri);
if (photoMekanik) {
imageView.setImageBitmap(bitmap);
photoMekanik = false;
} else if (photoElektonik) {
imageView2.setImageBitmap(bitmap);
photoElektonik = false;
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
您可以尝试使用github中的一个库来完成您的工作: 使用library可以轻松完成此操作 要拾取多个图像,只需执行以下操作
ImagePicker.create(this)
.multi() // multi mode (default mode)
.start(); // start image picker activity with request code
接收结果
在onActivityResult()中执行此操作
@Override
protected void onActivityResult(int requestCode, final int resultCode, Intent data) {
if (ImagePicker.shouldHandle(requestCode, resultCode, data)) {
// Get a list of picked images
List<Image> images = ImagePicker.getImages(data)
// or get a single image only
Image image = ImagePicker.getFirstImageOrNull(data)
}
super.onActivityResult(requestCode, resultCode, data);
}
@覆盖
受保护的void onActivityResult(int请求代码、最终int结果代码、意图数据){
if(ImagePicker.shoulHandle(请求代码、结果代码、数据)){
//获取已拾取图像的列表
列表图像=ImagePicker.getImages(数据)
//或者只获取一张图像
Image=ImagePicker.getFirstImageOrNull(数据)
}
super.onActivityResult(请求代码、结果代码、数据);
}
无法安装它