Android 如何防止PostTextChange()期间的文本更改破坏韩语字符组合

Android 如何防止PostTextChange()期间的文本更改破坏韩语字符组合,android,android-edittext,internationalization,cjk,Android,Android Edittext,Internationalization,Cjk,我们有在输入框中用连字符自动替换空格的逻辑,因为空格对该字段无效。到目前为止,它在所有语言中都非常有效,但在韩语中,这会导致字符组合中断。原因不是连字符本身,而是更新posterextchanged(s:Editable)中的Editable 之前: ㄱㅣㅁ被转换为김 之后: 김-ㄱㅣㅁ连字符后的三个字符不会转换为单个字符 我已经将其缩小到实际替换文本的行: s.replace(0,s.length,newName) 当我删除该行时,它会工作,因此我知道不是连字符本身导致问题,而是字符串替换。有

我们有在输入框中用连字符自动替换空格的逻辑,因为空格对该字段无效。到目前为止,它在所有语言中都非常有效,但在韩语中,这会导致字符组合中断。原因不是连字符本身,而是更新
posterextchanged(s:Editable)
中的
Editable

之前:

ㄱㅣㅁ被转换为

之后:

김-ㄱㅣㅁ连字符后的三个字符不会转换为单个字符

我已经将其缩小到实际替换文本的行:

s.replace(0,s.length,newName)


当我删除该行时,它会工作,因此我知道不是连字符本身导致问题,而是字符串替换。有什么方法可以防止这种情况发生吗?

s
StringBuilder
?但是需要
s.length()
新名称是如何创建的?这似乎做错了。