Android-onBackPressed关闭软键盘和活动 [英] Android - onBackPressed close soft keyboard AND activity

查看:76
本文介绍了Android-onBackPressed关闭软键盘和活动的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我仅对专注于创建的SearchView进行活动,因此弹出了软键盘.

I have an activity only for the SearchView which is focused on created so the soft keyboard pops up.

这是代码(kotlin):

This is the code (kotlin):

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_search_input)

    searchInput.isIconified = false

    searchInputLayout.setOnClickListener {
        finish()
    }
}


override fun onBackPressed() {
    searchInput.clearFocus()
    finish()
}

如您所见,当按下后退按钮时,我尝试关闭活动,但它仅关闭软键盘.

As you can see I try to close the activity when back button is pressed but it only closes the soft keyboard.

我该怎么做?

预先感谢

推荐答案

您可以创建自定义视图并实现 onKeyPreIme(keyCode:Int,event:KeyEvent)并检查 keyCode ==KeyEvent.KEYCODE_BACK 事件.

You can create customized view and implement onKeyPreIme(keyCode: Int, event: KeyEvent) and check for keyCode == KeyEvent.KEYCODE_BACK event.

希望答案将进一步向您解释.

Hope this answer will explain it to you furthermore.

尝试为您的 SearchView 实施这些功能:

try to implement these for your SearchView:

searchInput.setOnQueryTextFocusChangeListener{ _, b->
    if(!b){
     searchview.isIconified = true
     finish()
   }
}

这篇关于Android-onBackPressed关闭软键盘和活动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆