我希望ExpandableListView
在用户展开一个组时自动滚动,这样展开的组标题就在屏幕的顶部。我试过smoothScrollToPosition
,但这只是确保展开的组在屏幕上的某个地方可见。我希望显式滚动它,这样展开的组就在顶部,如下面的例子所示:
Before expanding Group 3: After expanding Group 3:
+=================+ +=================+
| Group 1 | | Group 3 |
+-----------------+ +-----------------+
| Group 2 | | Grp 3 Child 1 |
+-----------------+ +-----------------+
| Group 3 | | Grp 3 Child 2 |
+-----------------+ +-----------------+
| Group 4 | | Group 4 |
+=================+ +=================+
8条答案
按热度按时间pepwfjgg1#
这将滚动到选定的项目,当你点击组项目时调用它。
1u4esq0p2#
下面的代码是一个适合我的解决方案
2wnc66cl3#
这对我很有效。把它放到你的适配器里:
xoefb8l84#
这个对我有用
由于涡旋的主要工作部件是
vcirk6k65#
将
android:transcriptMode="disabled"
属性从xml添加到ExpandibleListView标记中。这应该可以工作。7lrncoxx6#
将
android:transcriptMode="disabled"
设置为我的ExpandibleListView
对我也起作用。将参数设置为“正常”,没有一个方法起作用(setSelectedGroup
,setSelectionFromTop
等)。只有
setSmoothScroll
可以工作,但效果不太好。nr9pn0ug7#
下面的代码对我有用。希望它能有所帮助。使用下面的代码在onGroupExpand中实现OnGroupExpandListener
}
pb3s4cty8#
setSelectedGroup
可以工作,但如果您想获得平滑的滚动效果,请按如下所示使用smoothScrollToPositionFromTop
: