我有LinearLayout
。一方有一个alphabetic index
字,就像字典一样,另一边有ListView
。我希望将listview滚动到特定视图,单击字母索引中的字母,同时保持此索引视图不变。
答案 0 :(得分:1)
在您的字母索引上注册了侦听器并知道要滚动到哪个项目后,您可以在列表视图中使用smoothScrollToPosition
(在API 8中添加),如:
mListView.smoothScrollToPosition(position);
如果您有很多项目,可能需要使用smoothScrollToPositionFromTop
(在API 11中添加)以使滚动更快。像这样:
mListView.smoothScrollToPositionFromTop(position, offset, duration);
偏移这里是你想要滚动开始的地方,持续时间显然需要多长时间。您可以实现自己的算法来计算这些值,以获得最佳滚动体验。