如何禁用可扩展列表视图中的元素?
How to disable elements in expandablelistview?
我将 ExpandableListView
与“groups”和“childs”元素一起使用。是否可以禁用扩展某些组元素?我需要更改 Adapter 中的一些代码还是应该 override
onclick
方法?
对点击时不应触发的组 header 调用 .setClickable(false)。
您的适配器接到 getGroupView
的呼叫。此方法 returns 显示为组 header 的视图。
如果您不想让该视图可点击,请调用 .setClickable(false)
@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater li = LayoutInflater.from(activity);
convertView = li.inflate(<<your header item>>, null);
}
if (isLastGroup)
convertView.setClickable(false);
return convertView;
}
在你的列表视图上使用 setOnGroupClickListener
并在你想要禁用的位置上使用 return true
这将禁用要扩展的第一个元素
expListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView expandableListView, View view, int i, long l) {
if (i==0){
return true;
}
return false;
}
});
我将 ExpandableListView
与“groups”和“childs”元素一起使用。是否可以禁用扩展某些组元素?我需要更改 Adapter 中的一些代码还是应该 override
onclick
方法?
对点击时不应触发的组 header 调用 .setClickable(false)。
您的适配器接到 getGroupView
的呼叫。此方法 returns 显示为组 header 的视图。
如果您不想让该视图可点击,请调用 .setClickable(false)
@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater li = LayoutInflater.from(activity);
convertView = li.inflate(<<your header item>>, null);
}
if (isLastGroup)
convertView.setClickable(false);
return convertView;
}
在你的列表视图上使用 setOnGroupClickListener
并在你想要禁用的位置上使用 return true
这将禁用要扩展的第一个元素
expListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView expandableListView, View view, int i, long l) {
if (i==0){
return true;
}
return false;
}
});