gpt4 book ai didi

Android 3 级 ExpandableListView 仅在第三级不显示行

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:27:53 26 4
gpt4 key购买 nike

我需要为 android 实现一个 3 级 ExpandableListView。我已经用 ExpListView 作为另一个 ExpListView 的子级完成了它。两个可展开的列表已经显示,也可以展开。但是只看到第 2 层,如果我点击第 2 层组行,箭头变为展开状态,但看不到第 3 层的行。认为外部 ExpListView 需要刷新才能为第 3 级的行获取空间,并且可能还需要重新计算行数。

在 stackoveflow 上的类似问题上,最多只有指向示例的链接,我不理解/无法适应我的实现的解决方案。

链接是这样的:http://mylifewithandroid.blogspot.de/2011/02/3-level-expandable-lists.html

有没有更简单的解决方案,或者任何人都可以用简单的方式解释一下。上面链接中的代码对我没有帮助。

解释我到目前为止所做的事情:我在 ExpandableListView 上设置了 BaseExpandableListAdapter,在它的 getGroupView() 中我使用了 layoutInflater 并编写了一个 ViewHolder,它为每一行保存一个 TextView(作为第一级文本)。在 getChildView() 中,我在第二个 ViewHolder 中使用了另一个 ExpandableListView。在那个 ExpListView 上,我还设置了一个 BaseExpandableListAdapter 并为此适配器实现了 getGroupView() 和 getChildView()。使用针对该组(作为第 2 级文本)和此处的子项(作为第 3 级文本)描述的 TextView 完成此操作。

如果需要我明天可以发布一些代码,需要先在这里准备。但是一个好的教程也会对我有帮助。

谢谢。

最佳答案

尝试在 getChildView() 中使用自定义的 expandableListView

class YourCustomExpandableListView extends ExpandableListView { 
public YourCustomExpandableListView (Context context) {
super(context);
}

protected void onMeasure(int width, int height) {
/*
* Adjust height
*/
height = MeasureSpec.makeMeasureSpec(500, MeasureSpec.AT_MOST);
super.onMeasure(width, height);
}
}

看看here

也可以找到完整的解决方案here

关于Android 3 级 ExpandableListView 仅在第三级不显示行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14823872/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com