Получить изображения из внешнего хранилища изображений в RecyclerView? - PullRequest
0 голосов
/ 18 января 2020

У меня есть папка во внешнем хранилище, имя моей папки (Whatsapp Sticker). Я хочу получить доступ ко всем изображениям из этой папки, когда я это сделаю .. одно изображение возвращается к длине размера папки .. Как я могу получить все изображения?

Это моя активность, где я получаю все изображения:

public class CupyActivity extends AppCompatActivity {
    RecyclerView recyclerView;
    recyclerAdapterCupy recyclerAdapterCupy;
    GridLayoutManager layoutManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_cupy);
        recyclerView = findViewById(R.id.recycler1);
        recyclerAdapterCupy = new recyclerAdapterCupy(CupyActivity.this, getData());
        recyclerView.setAdapter(recyclerAdapterCupy);
        layoutManager = new GridLayoutManager(this, 2);
        recyclerView.setLayoutManager(layoutManager);


    }

    private ArrayList<GetCupy> getData()   // this Method return one image again and Again... in my folder 26 images but 1 image return 26times
        {
            ArrayList<GetCupy> arrayList = new ArrayList<>();
           File downloadfile = Environment.getExternalStorageDirectory();
           File file = new File(downloadfile + "/Whatsapp Sticker");
            GetCupy getCupy = new GetCupy();
            if (file.exists())
            {
                File[] files = file.listFiles();

                for (int i = 0; i<files.length; i++)
                {
                    File file1 = files[i];

                    getCupy.setName(file1.getName());
                    getCupy.setUri(Uri.fromFile(file1));
                    Log.d("abcdf", "getData: "+Uri.fromFile(file1));

                    arrayList.add(getCupy);
                    Log.d("abc", "getData: "+arrayList);
                }
            }
            return arrayList;
        }
}

1 Ответ

0 голосов
/ 18 января 2020

создать объект данных Cupy внутри для l oop ..

 private ArrayList<GetCupy> getData()  
        {
            ArrayList<GetCupy> arrayList = new ArrayList<>();

           File file = new File(Environment.getExternalStorageDirectory() + "/Whatsapp Sticker");

            if (file.exists())
            {
                File[] files = file.listFiles();

                for (int i = 0; i<files.length; i++)
                {
                    getCupy = new GetCupy();
                    File file1 = files[i];

                    getCupy.setName(file1.getName());
                    getCupy.setUri(Uri.fromFile(file1));
                    Log.d("abcdf", "getData: "+Uri.fromFile(file1));

                    arrayList.add(getCupy);
                    Log.d("abc", "getData: "+arrayList);
                }
            }
            return arrayList;

        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...