输入搜索文本时重置列表滚动位置

问题描述:

如何在提供新建议时将列表滚动位置重置为顶部?输入搜索文本时重置列表滚动位置

向搜索对话框提供自定义搜索建议时,在向下滚动建议列表后输入更多字符时,滚动位置不会重置。

这很容易在快速搜索框重现时,配置为查找联系人:

  • 打开QSB
  • 选择联系人从语料库选项的东西,产生
  • 类型比一个结果的全屏,说“一个”
  • 向上滑动以显示来自列表底部的建议

键盘软输入键盘将隐藏,显示建议的完整高度列表视图。和滚动位置现在从顶部

  • 点击返回到搜索文本路程,添加一个字符

虽然光标重新查询和新的建议被提出,列表中不滚动回顶部

我对搜索对话框的使用遭受同样的行为,用户体验很差。我从HTTP API提供自定义建议

我已经注意到其他语料库选项将他们的建议限制为只有一个屏幕高度的建议,完全避免了这个问题。

尝试使用ListView的“smoothScrollToPosition(0)”在用户键入更多字符时回滚到第一个条目。这是你重置列表的意思吗?

+0

在这种情况下,正在使用的搜索对话框不会公开它的“ListView”以供调用活动/上下文使用。 'SearchManager'似乎没有提供任何引用对话视图组件的方法。 “ContentProvider”似乎也完全隔离 – ohhorob 2011-03-28 20:15:14

+0

哦,我明白了,那么我误解了这个问题,对不起。作为最后的手段,如果此行为非常重要,则可以使用自定义ListView实现自己的搜索对话框。 – 2011-03-28 20:39:19