Android -- EditText输入法打开时,监听返回键

Posted 匆忙拥挤repeat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android -- EditText输入法打开时,监听返回键相关的知识,希望对你有一定的参考价值。

import android.content.Context
import android.util.AttributeSet
import android.view.KeyEvent
import androidx.appcompat.widget.AppCompatEditText

/**
 * EditText输入法打开时,监听返回键
 */
class PrintTextEditTextView : AppCompatEditText 
    constructor(context: Context?) : super(context)
    constructor(context: Context?, attrs: AttributeSet?) : super(context, attrs)
    constructor(context: Context?, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr)

    override fun onKeyPreIme(keyCode: Int, event: KeyEvent): Boolean 
        if (keyCode == KeyEvent.KEYCODE_BACK && event.action == KeyEvent.ACTION_UP) 
            super.onKeyPreIme(keyCode, event)
            mOnKeyBoardHideListener?.invoke(keyCode, event)
            return false
        
        return super.onKeyPreIme(keyCode, event)
    

    /**
     * 键盘隐藏监听
     */
    private var mOnKeyBoardHideListener: ((Int, KeyEvent) -> Unit)? = null

    fun setOnKeyBoardHideListener(onKeyBoardHideListener: (Int, KeyEvent) -> Unit) 
        this.mOnKeyBoardHideListener = onKeyBoardHideListener
    

以上是关于Android -- EditText输入法打开时,监听返回键的主要内容,如果未能解决你的问题,请参考以下文章

Android -- 打开时隐藏软键盘

在adjustResize和软键盘打开时保留EditText比例

Activity打开时软件盘自动打开的解决办法

Android:为EditText打开键盘时处理后退按钮单击

在 Nexus Player、Android Cordova 应用程序上打开时输入第一个字符的虚拟键盘

键盘打开时相应向上滚动 RecyclerView