如何在数组android studio中编码多个图像

时间:2017-03-10 05:24:51

标签: android

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_CODE_PICKER
            && resultCode == RESULT_OK && data != null) {

        // Uri FilePath = data.getData();

        images = data.getParcelableArrayListExtra(ImagePickerActivity.INTENT_EXTRA_SELECTED_IMAGES);
        StringBuilder sb = new StringBuilder();

        for (int i = 0; i < images.size(); i++) {
            sb.append(images.get(i).getName() + "\n");
            imageFile = new File(images.get(i).getPath());
            fileList.add(imageFile.getAbsoluteFile());
            bitmap = BitmapFactory.decodeFile(fileList.get(i)+"");

        }

        // System.out.println("Images :" + bitmap);

        tvtest.setText(sb.toString());
    }
}

1 个答案:

答案 0 :(得分:1)

我认为你的意思是“如何在阵列中包含多个图像”。

您可以使用ArrayList存储位图:

ArrayList<Bitmap> arrayListOfBitmaps = new ArrayList<Bitmap>();
for (int i = 0; i < images.size(); i++) {
    imageFile = new File(images.get(i).getPath());
    bitmap = BitmapFactory.decodeFile(fileList.get(i)+"");
    arrayListOfBitmaps.add(bitmap); // Add a bitmap
}

或者如果你真的想要使用数组:

Bitmap[] bitmapArray = new Bitmap[10];

但是请注意位图。他们可能会占用大量设备资源,这将导致OutOfMemoryError