在我的应用程序中,我向用户显示列表中的项目,其中的项目如下:
现在我用来构建这样的列表的对象有一个字段,指示我想要使用的图标。图标(大小合适)存储在drawable-hdpi
,drawable-mdpi
,drawable-xhdpi
,drawable-xxhdpi
文件夹中。
public class ListItem {
private String firstLineText, secondLineText;
private String iconName;
}
我保留了一个地图绑定图标名称和资源ID,如:
Map<String, Integer> map = new HashMap<>();
map.put("icon_1", R.drawable.icon_1);
在扩展ArrayAdapter的类中,在public View getView(int position, View convertView, ViewGroup parent)
方法中,我只需从地图中取出图标并将其放在相应的ImageView对象中(在屏幕上它是绿色的android)。
然而,这种方法似乎对我来说太难了,因为将来我希望我的应用程序可以自定义。我的应用程序将只是服务器 - 客户端系统中的客户端。我希望系统管理员能够更改或添加新图标,例如使用网络服务。
那么,以编程方式存储来自外部世界的图像然后用它们提供应用程序的好方法是什么?