Android中的文本选择侦听器(API级别7)

时间:2012-04-17 09:14:28

标签: android text selection

我需要一个侦听器,每次EditText中的选择发生变化时都会调用该侦听器。 我google了一下,但我找不到任何有用的API级别7。 我正在编写文本编辑器,我希望每次用户选择粗体/斜体/带下划线的文本时,都会选中粗体/斜体/带下划线的按​​钮。

2 个答案:

答案 0 :(得分:4)

很老的问题,但有人可能仍然需要这个,所以这是我的解决方案:由于文本选择是通过长按文本完成的,所以我只是使用了以下内容:

editText.setOnLongClickListener(new View.OnLongClickListener() {

@Override
public boolean onLongClick(View view) {
        // do whatever you need to do on text selection
    }
});

这允许在文本选择上进行自定义行为,并且不会阻止用户复制/粘贴。

答案 1 :(得分:0)

更好的方法是扩展EditText,然后根据您希望如何管理更改文本,您可以覆盖2种方法中的一种来计算自定义行为。

  1. 如果您希望更改选择,则可以使用onSelectionChanged()方法并在那里实施代码。

  2. 如果您想在编辑器中更改文字时实施某些内容,则可以使用onTextChanged()