日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android开发之自定义输入框无法弹起键盘输入法的解决方法

發(fā)布時間:2023/12/15 Android 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android开发之自定义输入框无法弹起键盘输入法的解决方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

通常在開發(fā)需求中,在很多場景下我們需要手動吊起輸入法功能,但是偶爾會發(fā)現(xiàn)在自定義EditText輸入框中有時候會無法彈起輸入法,舉個我遇到的場景:

第一次進(jìn)入此頁面要求立馬獲取輸入框焦點(diǎn)并且彈起輸入法,可是我這個是自定義的輸入框調(diào)用多次最終依然無法彈起。

具體原因如下:

當(dāng)進(jìn)入activity或者fragment頁面的時候的onCreate和onCreateView生命周期的時候,此時輸入框還沒有倍繪制完成,因此輸入法在繪制完成之前無法獲取到要輸入的輸入框焦點(diǎn)因此無法彈出。

解決辦法如下:

方法一,在edittext.post中彈起鍵盤,已成功

//我是在fragment的onCreateView生命周期直接吊起鍵盤導(dǎo)致吊起失敗的,解決方法如下 , //通過在edittext.post中彈起鍵盤 binding.searchEditText.hint = hotWordData//首先獲取焦點(diǎn)binding.searchEditText.requestFocus()//再調(diào)起系統(tǒng)鍵盤binding.searchEditText.post { SoftKeyboardUtils.showKeyboard(binding.searchEditText) }

方法二,請自行測試

Timer timer = new Timer(); timer.schedule(new TimerTask() {@Overridepublic void run() {InputMethodManager manager =(InputMethodManager) etSearch.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);manager.showSoftInput(etSearch, 0);} }, 500);

看下吊起和隱藏輸入法法的工具類

import android.content.Context import android.view.View import android.view.inputmethod.InputMethodManager import com.xiayiye5.common.global.GlobalContext/*** 顯示和關(guān)閉系統(tǒng)鍵盤的方法* @author xiayiye5* @date 2021/9/29 10:45*/ object SoftKeyboardUtils {private val imm: InputMethodManager =GlobalContext.get().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager/*** 關(guān)閉系統(tǒng)鍵盤的方法*/fun hideKeyboard(view: View) {imm.hideSoftInputFromWindow(view.windowToken, 0)}/*** 顯示系統(tǒng)鍵盤的方法*/fun showKeyboard(view: View) {imm.showSoftInput(view, InputMethodManager.SHOW_IMPLICIT)} }

看下解決后的效果圖

感謝兩位博主提供的方法:方法一博主?方法二博主

總結(jié)

以上是生活随笔為你收集整理的Android开发之自定义输入框无法弹起键盘输入法的解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。