我有下一个代码用于添加 EditText
图像:
fun bind() {
val ssb = SpannableStringBuilder(".")
var bitmap = BitmapFactory.decodeResource(context.resources, R.drawable.ic_rand_5)
bitmap = resize(bitmap)
val clickableSpan = object : ClickableSpan() {
override fun onClick(p0: View?) {
d { "ON CLICK" }
}
}
ssb.setSpan(ImageSpan(context, bitmap), 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE)
ssb.setSpan(clickableSpan, 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE)
etExp.setText(ssb, TextView.BufferType.SPANNABLE)
}
点击图像打开键盘后,但我不需要这种行为。如何在使用 ClickableSpan
单击 ImageSpan
后禁用自动打开键盘?
最佳答案
当您将文本设置到 EditText 中时,它会获得焦点并且系统会调出键盘作为响应。摆脱键盘的最简单方法是像您一样设置文本,然后清除焦点:
//Set the ET
etExp.setText(ssb, TextView.BufferType.SPANNABLE)
//Clear the focus:
etExp.clearFocus();
希望对您有所帮助。
关于android - 单击 ClickableSpan 后如何禁用打开键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51598660/