AutoCompleteTextView下拉菜单出现时键盘闪烁

4

我在DialogFragment中使用AutoCompleteTextView。当它显示下拉列表时,键盘会很快地隐藏和再次显示,看起来像是闪烁。

可能的解决方案是,我发现这是由于

AutoCompleteTextView {

    showDropDown(){
       mPopup.setInputMethodMode(ListPopupWindow.INPUT_METHOD_NEEDED);
    }
}

因此,以这种方式覆盖showDropDown()会消除闪烁。

showDropDown(){
    super.showDropDown()
    mPopup.setInputMethodMode(ListPopupWindow.INPUT_METHOD_FROM_FOCUSABLE)
    mPopup.show()
}

但它在键盘上方显示下拉列表并阻止用户输入。也许有人知道更好的解决方案?


我也遇到了同样的问题。似乎是Android Q中的新问题。我会继续寻找答案,但目前为止我和你一样(在这个点上我看到了你的问题)。 - etrado
@etrado 我还没有找到任何解决方案。所以我用 TextInputEditText 替换了 AutoCompleteTextView,并在 ConstraintLayout 中放置了一个带有可过滤的 ArrayAdapterListView,看起来还不错。但你需要处理 ListView 的可见性。 - Ufkoku
1个回答

1

你可能不会相信,但我非常确定 Android Q 的 12月5日补丁已经解决了这个问题。今天早上我收到了更新,希望他们能解决这个相对较新的问题。结果他们做到了!当使用 AutocompleteTextView 时,我再也没有闪烁的键盘。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接