展开可展开列表视图中的所有子项
我想展开所有的孩子,而可扩展的列表视图是填充。 目前我的代码如下所示:
ExpandableListView listView = (ExpandableListView) findViewById(R.id.view); int count = viewAdapted.getGroupCount(); for (int position = 1; position <= count; position++) listView.expandGroup(position - 1);
这很丑陋。 有没有更好的方法来做到这一点?
您可以在自定义适配器的getGroupView中展开它:
@Override public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) { View v = super.getGroupView(groupPosition, isExpanded, convertView, parent); ExpandableListView mExpandableListView = (ExpandableListView) parent; mExpandableListView.expandGroup(groupPosition); return v; }
格鲁克!
将这些代码放在适配器上将使扩展列表保持打开状态,并禁用其closuresfunction。
ExpandableListView mExpandableListView = (ExpandableListView) parent; mExpandableListView.expandGroup(groupPosition);
这可能是一个小工作,但工作应该如何。 它打开所有组(在开始),可以随时closures
for ( int i = 0; i < groupList.size(); i++ ) { groupList.expandGroup(i); }
注意:在将适配器设置为可扩展视图之后放置此代码,否则可能会导致错误。 希望能帮助到你。
先把这个代码放在你的oncreate方法中,然后填充适配器
int count = adapter.getGroupCount(); for ( int i = 0; i < count; i++ ) listView.expandGroup(i);
扩大所有的群体
for(int i=0; i < myAdapter.getGroupCount(); i++) myExpandableListView.expandGroup(i);
如果你想让他们unCollapseable。
myExpandableListView.setOnGroupClickListener(new OnGroupClickListener() { @Override public boolean onGroupClick(ExpandableListView parent, View v,int groupPosition, long id) { return true; } });