簡體   English   中英

從圖庫中選擇多個圖像並顯示在視圖頁面中

[英]Pick multiple images from gallery and display in the viewpager

我有一個應用程序,我需要從圖庫中選擇多個圖像並將它們顯示在 viewpager 中。 我只選擇了一張圖像並將其顯示在圖像視圖中,如下所示:

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 中的一個庫來完成您的工作:

https://github.com/search?l=Java&q=multiple+image+picker&type=Repositories

使用ImagePicker庫輕松做到這一點

選擇多個圖像只需執行此操作

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM