как показать изображения из ArrayList <Bitmap>(SQLlte) - PullRequest
1 голос
/ 13 апреля 2019

У меня есть проблема, когда я не могу показать изображения (растровые изображения) из моей базы данных в списке на моем приложении Android Studio.

Я могу сделать снимок и сохранить его (base64) в своей базе данных и получить его.Но я не могу понять, как показать все изображения на дисплее.

Я пытался сделать это с помощью адаптера списка, но это не работает: /

 ArrayList<Bitmap> listData = new ArrayList<>();

        while(data.moveToNext()){
            //get the value from the database in column 1
            //then add it to the ArrayList

            byte [] encodeByte =Base64.decode(data.getString(1),Base64.DEFAULT);
            BitmapFactory.Options bmOptions = new BitmapFactory.Options();
            Bitmap bitmap =BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
            listData.add(bitmap);
        }

1 Ответ

0 голосов
/ 13 апреля 2019

Это быстрый способ отображения нескольких видов в зависимости от размера listData.

Первое добавление LinearLayout в your_current_activity.xml.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/linearLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    tools:context=".MainActivity">

</LinearLayout>

В классе Java

   LinearLayout linearLayout = findViewById(R.id.linearLayout);
   ArrayList<Bitmap> listData = new ArrayList<>();

    for (Bitmap a : listData) {
        ImageView image = new ImageView(this);
        image.setLayoutParams(new android.view.ViewGroup.LayoutParams(80, 60));
        image.setMaxHeight(20);
        image.setMaxWidth(20);
        image.setImageBitmap(a);
        linearLayout.addView(image);
      }

Ниже мой вывод (Предположим, у меня есть 5 изображений в listData)

enter image description here

...