我第一次使用自定义ExpandableListview
。我有自定义的可扩展列表视图,其中包含10个组,其中一些组有孩子,有些组没有孩子。
点击子项目时我想要孩子。 (如果是有孩子的团体)
单击组项目时我想要组。 (如果团体没有孩子)
我使用OnChildClickListener
(第一种情况)生孩子,但我没有成为小组。 (第二种情况)
有没有办法同时获得两者。如果组有孩子,则返回点击的孩子,否则返回点击的组。
请帮帮我
答案 0 :(得分:1)
首先将$ cf login
$ cf create-service speech_to_text standard speech-to-text-service
$ cf create-service text_to_speech standard text-to-speech-service
$ cf create-service language_translation standard language-translation-service
$ cf env
$ cd server
$ cf push
设置为列出
接下来将OnChildClickListener
设置为列出
OnGroupExpandListener
您也可以添加exList.setOnChildClickListener(this);
exList.setOnGroupExpandListener(this);
@Override
public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
Group gr = ds_list.get(groupPosition);
//here you can get child from group
return true;
}
@Override
public void onGroupExpand(int i) {
if(group don't have child) {
//get group by using group position(i)
}
}
不要同时使用OnGroupCollapseListener
和OnChildClickListener
,因为群组项目无法展开,其行为与普通OnGroupExpandListener
答案 1 :(得分:0)
您可以使用此方法获取父视图的索引,并检查该位置的父级是否包含子级。
expandableListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
//here you can check whether your parent contains a child or not by getting the parent position.
return false;
}
});