ユーザーからのテキスト入力を受け入れることになっているカスタム ビューを作成しようとしています (EditText は使用できません) カスタム ビューはソフト キーボードではうまく機能しますが、物理キーボードからの入力を受け取りません。タッチに集中
override fun onTouchEvent(event: MotionEvent): Boolean {
super.onTouchEvent(event)
if (event.action == MotionEvent.ACTION_DOWN) {
val imm: InputMethodManager = context
.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imm.showSoftInput(this, InputMethodManager.SHOW_FORCED)
requestFocus()
}
return true
}
そして私は onCreateInputConnection をオーバーライドしています
override fun onCreateInputConnection(outAttrs: EditorInfo): InputConnection? {
val fic = MyInputConnection(this)
outAttrs.actionLabel = null
outAttrs.inputType = InputType.TYPE_CLASS_NUMBER
outAttrs.imeOptions = EditorInfo.IME_ACTION_DONE
return fic
}