如何制作每个项目在Android中具有相关信息的项目列表?
例如,我希望能够拥有一个国家/地区列表,然后点击该国家/地区,找到与该国家/地区相关联的人口,语言和/或电子邮件。
我发现以下链接显示了如何制作一个简单的列表但不是如何点击一个项目并获取与该县相关的信息。
http://developer.android.com/resources/tutorials/views/hello-listview.html
如何在不创建数据库的情况下执行此操作,这对我来说似乎有点过分了?
答案 0 :(得分:0)
您可以制作自定义列表适配器:
当用户最终点击某个项目时,您将获得该国家/地区对象并使用它进行进一步处理。
或者,制作一个hashmap,映射国家/地区名称与其代表的实际对象之间的关系,并在需要进行映射时引用它。
列表适配器: http://developer.android.com/reference/android/widget/ListAdapter.html
答案 1 :(得分:0)
你创建了你的字符串列表,然后你可以创建一个`HashMap
像这样:class PopulationInformation {
// add fields
String name;
int population;
String language;
//pretend there's a constructor
// should override hashcode and equals, but right now
// default works
}
然后你可以做
Map<String,PopulationInformation> map = new HashMap<String,PopulationInformation>();
map.put("United States",new PopulationInformation("United States",320000000,"Engish"));
map.put("Canada",new PopulationInformation("Canada",30000000,"French/Engish"));
然后当您在列表中选择某些内容时
String selected = ... // how did you select?
PopulationInformation info = map.get(selected);
String infoString = info.name + "'s population is " + info.population
+ ". They speak " + info.language + ".";
答案 2 :(得分:0)
你能不能只设置一个你想要存储的私有成员的Country对象,然后使用ListView / ListActivity来显示这些国家?
Vogella here
提供了一个教程第4节涵盖了你需要的大部分内容。