我的应用程序在很多设备上都运行良好。但自从在我自己的Pixel上升级到Android 12后,当调用showSoftInput或只是点击Bottomsheet中的AppCompatEditText时,会发生以下情况。
val imm = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager;
imm.showSoftInput(this, InputMethodManager.SHOW_IMPLICIT)
Logcat警告(应用程序中无任何React):
Ignoring showSoftInput() as view=androidx.appcompat.widget.AppCompatEditText{b5311a0 VFED..CL. .F.P..ID 84,0-996,118 #7f0900a7 app:id/et_bottomsheet aid=1073741827} is not served.
我尝试了很多方法,比如请求焦点,使用SHOW_FORCE显示软输入,但是没有任何效果。
1条答案
按热度按时间kiayqfof1#
从Android 11(API 30)开始,您可以使用inset的API show()手动强制显示输入法/键盘
并将其隐藏为:
对于API 30以下的目标API,使用
Compat
版本进行后移植: