在我的应用程序中,我有一个自定义列表视图,其中包含一些文本视图和图像视图,如下图所示。
我的要求是,当我们点击列表行时,它应该展开,当再次点击它或点击任何其他行时它应该崩溃。扩展行应该是这样的
展开行的内容是动态的,有时没有数据,有时会有更多的值。它看起来应该像第二张图片。请为此提供解决方案。
答案 0 :(得分:10)
您正在寻找ExpandableListView。
可扩展ListView bydefault有两个级别。第一个称为“组视图”,第二个级别称为“子视图”。您可以通过使用我提供的第一个链接上的Custom Adapter样本来实现。
这里有一些链接可以帮助你入门,
http://about-android.blogspot.in/2010/04/steps-to-implement-expandablelistview.html
http://www.techienjoy.com/android-expandable-list-dynamically-created-example.php
编辑1
要仅在特定时间扩展子项,请添加此项
explist.setOnGroupExpandListener(new OnGroupExpandListener() {
public void onGroupExpand(int groupPosition) {
for(int i=0; i<myExpAdapter.getGroupCount(); i++) {
if(i != groupPosition) {
explist.collapseGroup(i);
}
}
}
});