我使用以下方法从我的设备获取位图并将其显示在 ListView 中
pic1="Harris1.jpg"
pic2="Harris2.jpg"
pic3="Harris3.jpg"
Bitmap bmp = BitmapFactory.decodeFile("/storage/emulated/0/Pictures/" + pic1);
Bitmap bmp1 = BitmapFactory.decodeFile("/storage/emulated/0/Pictures/" + pic2);
Bitmap bmp2 = BitmapFactory.decodeFile("/storage/emulated/0/Pictures/" + pic3);
Bitmap[] image={bmp,bmp1,bmp2};
for(int i=0;i<text1.length;i++)
{
item_details.setImage(image[i]);
}
这工作正常,但有没有一种方法可以构建 Bitmap {} 图像,而不必为每个 = BitmapFactory.decodeFile 添加一行?
我希望能够从数据库中读取文件名,但有时只有 3 张图片,但有时这里可能有 50 张,我希望例程能够执行 {bmp,bmp1, bmp2 等...} 自动
有什么想法吗?
感谢您的帮助
标记
最佳答案
基于您的代码示例。使用 String.format
方法是实现您的目标的最简单方法。
String picFormat="Harris%d.jpg";
for(int i=0;i<text1.length;i++)
{
String pic = String.format(picFormat, i+1);
Bitmap bmp = BitmapFactory.decodeFile("/storage/emulated/0/Pictures/" + pic);
item_details.setImage(bmp);
}
关于 ListView 中的Android BitmapDecode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30690838/