假设我有一个项目列表,如String [] list = {" item1"," item2"," item3",....,& #34; itemN"};我有相应的图像,每个项目有不同的格式(一些在jpg,一些在png等)和不同的名称串行(作为列表数组的索引)在drawable文件夹中。我必须对列表数组进行一些处理。每次它返回一些特定的&列表的不同索引。 因此,我必须在android studio中显示由返回索引指示的那些项目的相应图像作为列表视图。我怎样才能做到这一点。 例如,如果在处理后我有索引号:{3,7,1},我必须显示存储在drawable文件夹中的item3,item7和item1的相应no图像作为listView.Again,指示的索引值可能会根据处理而改变在上面。 有人可以帮忙吗???
编辑:
实际上我希望here in the picture显示图像和文字的顺序不会按照'位置'而是根据我的选择,就像在listview的第一行位置一样将具有item3的图像,在行位置2 - >项目7的图像,在行位置3 - >第1项的图像。
答案 0 :(得分:0)
将图像的R值存储在整数数组中,您可以根据该数组中的索引进行发布
int _rImage[] ={R.drawable.img1,R.drawable.img2}
答案 1 :(得分:0)
如果您想按名称使用ResourceId,请尝试使用
int drawableResourceId = this.getResources().getIdentifier("nameOfDrawable", "drawable", this.getPackageName());
答案 2 :(得分:0)
在List Array处理类中,定义一个包含对图像的引用的Int数组:
gl_Position = vec4(pos+gl_InstanceID*0.25, 1);
现在考虑处理后只返回三个索引: 例如: indices [] = {1,5,6}; int imageArray [] - (大小可以是三个)
int imageRes[] = {R.drawable.image1, R.drawable.image2,...};
您的ListView可以包含一个图像视图。为列表视图创建自定义适配器,并将imageArray作为参数传递。
然后你可以像这样设置ImageView的Image:
for(int i =0; i<3;i++){
imageArray[i] = imageRes[indices[i]];
}