Android EditText 监听光标位置变化

2023-12-31

我有一个包含 EditText 的对话框。 EditText 在创建时已被填充。当用户将光标放在文本的某些部分上或附近时,将会弹出一个 Toast。

我的问题是监听光标位置的变化。其他post http://stackoverflow.com/questions/3652569/android-edittext-listener-for-cursor-position-change问同样的问题,接受的解决方案是

您可以重写 onSelectionChanged (int selStart, int selEnd) 以获取有关选择更改的通知。如果光标移动,也会调用此函数(在本例中为 selStart == selEnd)

onSelectionChanged (int selStart, int selEnd) http://developer.android.com/reference/android/widget/TextView.html#onSelectionChanged%28int,%20int%29是 TextView 类的受保护方法。如何覆盖它?


只需子类化或扩展 EditText 类,并将以下代码添加到新创建的类中:

@Override 
protected void onSelectionChanged(int selStart, int selEnd) {
    super.onSelectionChanged(selStart, selEnd); // Always call
    // the super implementation, which informs the accessibility 
    // subsystem about the selection change.

    // Do ur task here.
}

不要忘记向子类添加构造函数。 :)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android EditText 监听光标位置变化 的相关文章

随机推荐