Android 2.1:windowSoftInputMode =“adjustResize”与ListView无法正常工作

时间:2010-11-09 00:34:09

标签: android listview

我有一个带有ListView的布局,其中包含EditText对象,当用户选择编辑列表项时,这些对象可以requestFocus()。我确保在发生这种情况时调用ListView上的setSelection(),然后让EditText请求焦点,然后使用InputMethodManager.showSoftInput显示软键盘。但是,当发生这种情况时,列表视图正在正确调整大小,但所选列表项仍然在首屏下方,用户必须向上滚动。这在2.2上正常工作,但在2.1上失败了。确保列表选择仍然可见的任何想法?

2 个答案:

答案 0 :(得分:1)

事实证明,我最终在屏幕上记录了我想要的位置,然后在列表视图上覆盖了onSizeChanged()。当大小改变并且我有一个位置我想滚动查看时,我在列表上调用了setSelection()以将其带入视图。不是非常优雅,但似乎有效。

答案 1 :(得分:0)

我会尝试从列表本身或祖先视图的onMeasure()调用smoothScrollToPosition()