public class MainActivity extends Activity {
//查看图片按钮    private Button look;    private Button add;
//显示图片名称的list    ListView show_list;    ArrayList names = null;    ArrayList descs= null;    ArrayList fileNames = null;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        look = (Button) findViewById(R.id.look);        add = (Button) findViewById(R.id.add);        show_list = (ListView) findViewById(R.id.show_list);        look.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                names = new ArrayList();                descs = new ArrayList();                fileNames = new ArrayList();                Cursor cursor = getContentResolver().query(                        MediaStore.Images.Media.EXTERNAL_CONTENT_URI, null, null, null, null);                while (cursor.moveToNext()) {                    //获取图片的名称                    String name = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DISPLAY_NAME));                    //获取图片的生成日期                    byte[] data = cursor.getBlob(cursor.getColumnIndex(MediaStore.Images.Media.DATA));                    //获取图片的详细信息                    String desc = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DESCRIPTION));                    names.add(name);                    descs.add(desc);                    fileNames.add(new String(data, 0, data.length - 1));                }                List> listItems = new ArrayList<>();                for (int i = 0; i < names.size(); i++) {                    Map map = new HashMap<>();                    map.put("name", names.get(i));                    map.put("desc", descs.get(i));                    listItems.add(map);                }                //设置adapter                SimpleAdapter adapter = new SimpleAdapter(MainActivity.this, listItems,                        R.layout.line, new String[]{"name", "desc"}, new int[]{R.id.name, R.id.desc});                show_list.setAdapter(adapter);            }        });        ///list的点击事件    show_list.setOnItemClickListener(new AdapterView.OnItemClickListener() {        @Override        public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {            View viewDiag = getLayoutInflater().inflate(R.layout.view,null);            ImageView image = (ImageView)viewDiag.findViewById(R.id.image);            image.setImageBitmap(BitmapFactory.decodeFile((String) fileNames.get(i)));            new AlertDialog.Builder(MainActivity.this).setView(viewDiag)                    .setPositiveButton("确定",null).show();        }    });    }}


android:name="android.permission.READ_EXTERNAL_STORAGE"/>


更多相关文章

  1. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
  2. Android屏幕分辨率正确获取及PX,DPI,DP,SP等的对应关系
  3. Android(安卓)matrix 控制图片的旋转、缩放、移动
  4. android 获取唯一标识
  5. android拍照与读取相册
  6. Android(安卓)报错:Caused by: android.os.FileUriExposedExcepti
  7. Android(安卓)热点开关状态的判断和获取热点ssid
  8. Android软键盘适配问题
  9. AIR Native Extension的使用(Android)一 : 打包ane

随机推荐

  1. Android技术专家 高焕堂 推荐这本书
  2. Android(安卓)6.0及运行时权限处理
  3. Android的ps命令介绍和技巧
  4. 2.5.3 使用alertDialog创建自定义对话框
  5. Android设置android:clipChildren达到的
  6. Android:关于声明文件中android:process
  7. Fetching https://dl-ssl.google.com/and
  8. Android串口Serial服务解析
  9. android:layout_gravity 和 android:grav
  10. Android(安卓)O 版本(Android(安卓)8.0) 存