Android ExpandableListview 如何用循环把 组和子元素展示出来
问题描述
以下代码只是一个例子把组合子元素展示出来。 如果我连接去数据库的话, 这种方法显然行不通。因为我们无法确定有多少个组合多少个子。 大神们可否指点一下如何用 循环把它们展示出来? 例如用 For 循环。
adapter adapter; // BaseExpandableListAdapterExpandableListView expandableListView;List<String> category;HashMap<String,List<String>> item;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_ex_listview); expandableListView=(ExpandableListView)findViewById(R.id.listview); display(); adapter=new adapter(this,category,item); expandableListView.setAdapter(adapter);}public void display(){ category=new ArrayList<String>(); item=new HashMap<String,List<String>>(); category.add('Western Food'); category.add('Chinese Food'); category.add('Japanese Food'); List<String> western_food = new ArrayList<String>(); western_food.add('Fried Chicken'); western_food.add('French Fries'); western_food.add('Beef Steak'); List<String> chinese_food = new ArrayList<String>(); chinese_food.add('Chicken Rice'); chinese_food.add('Duck Rice'); List<String> japanese_food = new ArrayList<String>(); japanese_food.add('Tapanyaki'); japanese_food.add('Takoyagi'); japanese_food.add('Sushi'); japanese_food.add('Lamian'); item.put(category.get(0), western_food); item.put(category.get(1), chinese_food); item.put(category.get(2), japanese_food);}
问题解答
回答1:无需知道有多少个组合与子,只要从数据库中获取的数据你能区别不同的组合与子所属的组合就可以了。将数据放到相应的存储集合中,在通过设计Adapter就可以展示。
相关文章:
1. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)2. MYSQL新建用户设置可以远程访问的问题3. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题4. java - mybatis怎么实现在数据库中有就修改,没有就添加5. node.js - nodejs和前端JavaScript 字符串处理结果不一样是什么原因?6. mysql多表联合查询优化的问题7. MySQL中的enum类型有什么优点?8. 数据库 - mysql 远程可以连接,但是本地连接拒绝?9. 数据库设计 - MySQL数据库主键问题10. linux - 为什么我在mysql的my.cnf下找不到bind-address?
![$fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题](http://www.haobala.com/attached/image/news/202205/093622cb60.png)