先说说需求,这样便于理解代码:(以图来讲解说明)
- 这是A页面:可以看到一个医疗组:组名是从B 页面拿到的。想要更换组名,点击这个组,就跳转到B页面。
2.这是B页面:页面是分组选项,其中:A页面上次选的组名要在B页面展示出来,同时,用户也可以重新选择组名,再传递给A.
3.做的过程中碰到的难点就是:A页面选择的组名怎么在B页面中展示。
(1) 我刚开始的思路是:把A页面选择的组名的ID保留传递给B,然后和B中所有的组名ID比较,如果有找到,说明是选中状态,就把CheckBox 设置为true. 所以在BaseExpandableListAdapter 的继承类中,重写getGroupView的时候,有以下代码来比较ID.
//初始化特定的checkbox状态:
updateCheckBoxView(mGrouplist,cb_parent,mGroupId,groupPosition);
notifyDataSetChanged();
private void updateCheckBoxView(ArrayList<DoctorGroupBean> mGrouplist, CheckBox cbParent, String mGroupId, int groupPosition) {
if(mGrouplist!=null){
String roomgroupid = mGrouplist.get(groupPosit