在我的应用程序中,我有一个带有一些 TextView 和 ImageView 的自定义 ListView ,如下图所示。
我的要求是当我们点击列表行时它应该展开,当再次点击它或点击任何其他行时它应该折叠。展开的行应该是这样的
扩展行的内容是动态的,有时没有数据,有时有更多值。它应该看起来像第二张图片。请为此提供解决方案。
最佳答案
您正在寻找ExpandableListView .
默认情况下可扩展的 ListView 有两个级别。第一层称为“组 View ”,第二层称为“ subview ”。您可以简单地通过使用我提供的第一个链接中的自定义适配器示例来实现。
这里有几个链接可以帮助您入门,
http://about-android.blogspot.in/2010/04/steps-to-implement-expandablelistview.html
http://www.techienjoy.com/android-expandable-list-dynamically-created-example.php
编辑 1
为了让唯一的 child 在特定时间展开,添加这个,
explist.setOnGroupExpandListener(new OnGroupExpandListener() {
public void onGroupExpand(int groupPosition) {
for(int i=0; i<myExpAdapter.getGroupCount(); i++) {
if(i != groupPosition) {
explist.collapseGroup(i);
}
}
}
});
关于android - 当我们在 ListView 中点击它时如何展开列表行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10613453/