【发布时间】:2014-07-01 15:01:32
【问题描述】:
例如,我在 EditText 中有以下字符串:
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat
正常的行为是,当用户在虚拟键盘上长按退格键时,系统会直接删除每个单词,例如:
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat
变成
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat
我可以防止此类行为在我的应用中发生吗?
我尝试观察onKeyDown、onKeyUp、onKeyLongPress 和onTextChanged、afterTextChanged、beforeTextChanged,但没有找到可以用来防止此类行为的东西。
【问题讨论】:
-
为什么要避免这种情况?任何时候你想改变操作系统中如此重要的东西,你都需要仔细考虑。
-
其实没有什么特别的原因,我只希望长按和退格键短按一样。
-
是的,如果没有真正令人信服的理由,那么您不应该这样做。改变操作系统的基本范式总是会给用户带来糟糕的体验。
-
这不一定是操作系统,而是 IME(软键盘)。 Android 允许您安装第 3 方 IME,它们中的任何一个都可能以不同的方式处理这些按键(您根本无法控制)。
标签: android android-edittext long-press