图像管理,图像阵列

时间:2017-01-27 10:55:13

标签: java android image drawable

我的pic1.png文件夹中有pic35.pngres\drawable的35张图片。我需要创建这个图片的数组来填充我的ListView。我知道我需要一些循环。

int[] img;
for (int i = 1; i <= 35; i++) {
            //here should be my loop body, but i dunno :( i tried this, but ofc this is wrong.
            img = R.drawable.pic[i];
        }

还有一个问题: 有没有机会在drawable文件夹中管理我的图片?我的意思是,如果我有两包图像,我不能res\drawable\pack1res\drawable\pack2个文件夹,是管理图像以提供像pack1_pic1等名称的唯一方法吗?

2 个答案:

答案 0 :(得分:1)

试试这个

for (int i = 1; i <= 35; i++) {
   Drawable drawable = getResources().getDrawable(getResources()
                  .getIdentifier("pic"+i, "drawable", getPackageName()));
}

答案 1 :(得分:1)

回答你的第一个问题:

您可以使用以下方法将图像ID设置为int数组:

int[] img;
for (int i = 1; i <= 35; i++) {
            img[i] = getResources().getIdentifier("pic"+i, "drawable", getPackageName());
        }

将返回R.drawable.pic1...35;

的值

关于你的第二个问题

不,资源机制不支持drawable目录中的子文件夹,

请参阅:Answer