当SearchView处于活动状态时,Android onBackPressed未触发



我的应用程序中有两个搜索视图,一个在另一个下面。当我展开两个搜索视图并尝试通过单击设备后退按钮关闭搜索视图时。然后,光标总是从第二搜索视图移动到第一搜索视图并且从第一搜索视图移动至第二搜索。但是onBackPressed根本没有触发。

override fun onBackPressed() {
if (!searchViewOne.isIconified) { // It is not triggering here on back press
// TODO something here
}
}

问题:当SearchViews处于活动时,onBackPressed未触发

期望:希望关闭两个SearchViewsonBackPressed

注意:这只发生在Android OS 6.0(API<=23(及以下版本中。在6.0以上,它按预期工作。

知道怎么修吗?

所以我通过在init搜索视图中设置isFocusablefalse来修复它。

searchViewOne.isFocusable = false
searchViewTwo.isFocusable = false

现在onBackPress被触发,问题得到了解决。

最新更新