Android 实现获取手机里面的所有图片详解及实例

实现代码:
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<Map<String, Object>> listItems = new ArrayList<>();
for (int i = 0; i < names.size(); i++) {
Map<String, Object> 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();
}
});
}
}
XML:
<!--获取手机存储卡权限--> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# Android
# 实现获取手机里面的所有图片
# 获取手机图片
# 手机图片获取
# Android读取assets目录下的所有图片并显示的方法
# android 获取手机中的所有图片或某一目录下的图片方法
# 希望能
# 谢谢大家
# 存储卡
# id
# setOnClickListener
# findViewById
# onClick
# OnClickListener
# View
# super
# savedInstanceState
# Bundle
# activity_main
# layout
# setContentView
# EXTERNAL_CONTENT_URI
# Media
# Images
# getString
# String
相关文章:
建站之星CMS建站配置指南:模板选择与SEO优化技巧
零基础网站服务器架设实战:轻量应用与域名解析配置指南
建站主机类型有哪些?如何正确选型
建站之星后台密码如何安全设置与找回?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
制作证书网站有哪些,全国城建培训中心证书查询官网?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
如何快速启动建站代理加盟业务?
网站制作知乎推荐,想做自己的网站用什么工具比较好?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
大连网站设计制作招聘信息,大连投诉网站有哪些?
如何在Golang中使用replace替换模块_指定本地或远程路径
建站之星在线客服如何快速接入解答?
网站制作多少钱一个,建一个论坛网站大约需要多少钱?
大型企业网站制作流程,做网站需要注册公司吗?
建站之星如何快速解决建站难题?
如何快速搭建高效WAP手机网站吸引移动用户?
免费网站制作appp,免费制作app哪个平台好?
小型网站建站如何选择虚拟主机?
定制建站如何定义?其核心优势是什么?
个人摄影网站制作流程,摄影爱好者都去什么网站?
深圳网站制作案例,网页的相关名词有哪些?
h5在线制作网站电脑版下载,h5网页制作软件?
重庆网站制作公司哪家好,重庆中考招生办官方网站?
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
C#怎么创建控制台应用 C# Console App项目创建方法
Swift中swift中的switch 语句
如何有效防御Web建站篡改攻击?
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
如何用免费手机建站系统零基础打造专业网站?
如何用5美元大硬盘VPS安全高效搭建个人网站?
交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?
*服务器网站为何频现安全漏洞?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
如何在IIS中配置站点IP、端口及主机头?
Python文件管理规范_工程实践说明【指导】
如何快速搭建支持数据库操作的智能建站平台?
深圳网站制作的公司有哪些,dido官方网站?
招商网站制作流程,网站招商广告语?
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
如何在阿里云通过域名搭建网站?
如何在橙子建站中快速调整背景颜色?
商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?
建站VPS推荐:2025年高性能服务器配置指南
佛山网站制作系统,佛山企业变更地址网上办理步骤?
如何规划企业建站流程的关键步骤?
宝塔面板如何快速创建新站点?
*请认真填写需求信息,我们会在24小时内与您取得联系。