Android使用ImageView填充数组

Android使用ImageView填充数组,android,listview,imageview,drawable,android-arrayadapter,Android,Listview,Imageview,Drawable,Android Arrayadapter,我想要一个imageview数组,但我不知道如何用imageview类型的对象填充它 ImageView[] forAdapter = new ImageView[imageIds.size()]; for(int i = 0; i < imageIds.size(); i++) { ImageView mImageView = new ImageView(context); forAdapter[i]

我想要一个imageview数组,但我不知道如何用imageview类型的对象填充它

 ImageView[] forAdapter = new ImageView[imageIds.size()];
 for(int i = 0; i < imageIds.size(); i++)
 {
                    ImageView mImageView = new ImageView(context);
                    forAdapter[i] = mImageView.setImageDrawable(((imagesPulled.get(imageIds.get(i)))));
}
ImageView[]forAdapter=newimageview[imageIds.size()];
对于(int i=0;i
这不起作用,因为
.setImageDrawable
不返回imageview,而且我不知道有任何对象实际返回


我曾考虑在数组中使用drawables,但我最终将为listview设置arrayadapter,并且我无法使用drawables创建R.layout(我将得到一个类强制转换异常,因为xml文件使用的是ImageView而不是drawable类型),因此,我只能将ImageView放入一个数组中,除非我处理问题的方法不对。

您的mImageView就是ImageView本身


因此,forAdapter[i]=mImageView应该可以正常工作。如果您使用其他操作,您可以在分配任务之前执行这些操作。

您的代码就快到了!我只想做一个小改动,并在下面对其进行评论:

 ImageView[] forAdapter = new ImageView[imageIds.size()];
 for(int i = 0; i < imageIds.size(); i++)
 {
                    forAdapter[i] = new ImageView(context);
                    forAdapter[i].setImageDrawable(imagesPulled.get(imageIds.get(i)));
}
设置图像(使用setImageDrawable、setImageResource等)不会返回任何内容。这是对图像本身执行的操作,因此您所要做的就是从要修改的变量调用该方法:

forAdapter[i].setImageDrawable(imagesPulled.get(imageIds.get(i)));
你完成了:) 如果你有任何疑问,请在评论中提问


希望能有帮助。

谢谢,是的,我成功了。最终改变了一些事情,为一个定制的阵列适配器。尽管定制阵列适配器很灵活,我还是尝试跳过它
forAdapter[i].setImageDrawable(imagesPulled.get(imageIds.get(i)));