android - 使用 longclick 在 textview 中显示选择指针和突出显示文本

标签 android

我有一个 TextView,我想在其上实现 LongClickListner 并选择其中的部分文本……但是选择指针不会出现,文本也不会突出显示。 我知道文本已被选中,因为当我使用 view.getselectionstart() 和 view.getselectionend() 时,它们会返回正确的值...在我使用的代码下方:

textView.setOnLongClickListener(new OnLongClickListener() {

public boolean onLongClick(View v) {
   Selection.setSelection((Spannable) textView.getText(),5, 10);
   v.setSelected(true);
   return true;
}
 });

这没有显示任何东西......但是当我尝试记录选择的开始和结束时:

Log.d("SELECTED TEXT LISTNER",Selection.getSelectionStart(textView.getText())
+ " " +Selection.getSelectionEnd(textView.getText()));

正确的值 (5, 10) 被返回...任何帮助我如何显示选择指针并在长按时突出显示?

最佳答案

在 XML 中:

android:textIsSelectable="true"

以编程方式:

textView.setTextIsSelectable(true);

您不需要实现自己的 onLongClickListener,因为默认行为如您所述。

关于android - 使用 longclick 在 textview 中显示选择指针和突出显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12512119/

相关文章:

Java - Android SDK 8 - 使用 DocumentBuilderFactory 进行 XML 解析并在实体之后终止字符串

java - 使用 XMPP 构建聊天应用程序的模式

android - 将项目添加到具有指定对象的数组列表

java - Android - 使用后退按钮关闭主 Activity ~ 错误 II

java - 在 ListView 中选择项目

android - 低平台版本的 StrictMode

java - 如何从ListView中提取选定的项目?

android - 如何与不受支持的广告公司一起使用 AdWhirl?

android - 为什么要进行这种类型的类型转换?

java - 如何停止并重新启动 Android 定位服务