很抱歉,如果标题令人困惑,但我对如何提出这个问题感到困惑。
我有一个列表视图的自定义适配器,其中包含一个imageview。列表视图中的每个项目显示的图像将不同。我已经输入了有关listview项目的信息,包括SQLite数据库中各自图像的名称(作为文本),我在资产/数据库目录中附加到我的应用程序。
我显然无法使用imageView.setImageResource(R.id.<name of image file>)
,因为显示的图像文件取决于适配器显示的listView中的哪个项目,因此我无法将其编码到自定义适配器类中。
我找到了一个使用Resources.getIdentifier()
的答案,但是文档说它的使用非常不鼓励,所以我想知道是否有更好的方法。
答案 0 :(得分:0)
您可以在ArrayList或List中存储图像资源ID。然后,您可以根据imageView位置设置图像资源。
创建一个包含2个变量的模型类,String表示text,int表示图像资源id。
并创建该模型类类型的数组列表。并将该arraylist分配给listview。
从Android开发者那里了解有关ListView的更多信息。