如何使用软键盘在行的第一个位置检测退格键?

时间:2016-12-04 06:56:49

标签: android

我想创建一个列表,其中每行都有一个复选框,并且能够在键入enter或backspace时添加和删除这些行。 我遇到的问题是,当我在行的第一个位置单击退格键时,android none检测到任何内容,我无法删除复选框和换行符。 有没有办法用软键盘检测线的第一个位置的退格键?

1 个答案:

答案 0 :(得分:0)

没有100%的方法来检测它。但是大约95%的方法是使用EditText的子类来覆盖getInputConnection函数以返回自己的自定义InputConnection。然后,您将从软键盘到InputConnection获取原始事件。然后,您可以覆盖deleteSurroundingText函数,以告知何时按下任何类型的删除按钮。

就像我说的那样,95%的时间都会有效。剩下的5%是键盘检查其光标位置,如果它位于字段的开头则不进行删除。我不知道是否有任何主键盘可以做到这一点,但它可能会这样做。在那种情况下,你是SOL。