获取手机相册所有图片

/*
<com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/sdv"
        android:layout_width="100dp"
        android:layout_height="100dp"
        fresco:placeholderImage="@drawable/icon_placeholder"
        fresco:placeholderImageScaleType="fitCenter"

        fresco:progressBarImage="@drawable/icon_progress_bar"
        fresco:progressBarImageScaleType="centerInside"
        fresco:progressBarAutoRotateInterval="5000"

        fresco:failureImage="@drawable/icon_failure"
        fresco:failureImageScaleType="centerInside"

        fresco:retryImage="@drawable/icon_retry"
        fresco:retryImageScaleType="centerCrop"
        />
Uri uri = Uri.fromFile(new File(list.get(position)));
    holder.simpleDraweeView.setImageURI(uri);
    适配器里获取图片路径需要转型
    这里用的是fresco加载图片
    */
    //private List<String> docs = new ArrayList<>();
    //recyclerview的数据源需要从手机相册中获取
    //遍历图片  每遍历到一张图片都添加到集合里
    private void initData() {

        Cursor cursor = getContentResolver()
                .query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI
                , null, null, null, null);
        while(cursor.moveToNext()){
            String paths = cursor.getString(cursor.getColumnIndex(MediaStore
                    .Images.Media.DATA));
            File file = new File(paths);
            String absolutePath = file.getAbsolutePath();
            docs.add(absolutePath);
        }
        cursor.close();

//        for(int i = 0;i<docs.size();i++){
//            Log.d("TAG",docs.get(i).toString());
//        }

        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                recycler.setLayoutManager(new GridLayoutManager(MainActivity
                        .this,3 , OrientationHelper.VERTICAL,false));
                MyRecyclerViewAdapter adapter = new MyRecyclerViewAdapter
(MainActivity.this,docs);
                recycler.setAdapter(adapter);

                adapter.setOnItemClick(new MyRecyclerViewAdapter.onRecyclerItemClick() {
                    @Override
                    public void onItemClicklistener(int position) {
                        Intent intent = new Intent(MainActivity.this
,ZoomImageActivity.class);
                        intent.putExtra("imgurl",docs.get(position));
                        startActivity(intent);
                    }
                });

            }
        });

    }

猜你喜欢

转载自blog.csdn.net/wei844067872/article/details/79737735