我知道我们可以让 textView
可以点击。当有人在 WebView
上打开一篇新闻文章并长按段落中的一个句子时,我想让用户有机会突出显示它以供将来引用或添加评论。为此,当网站加载时,我应该将段落中的每个句子存储在哪里?我应该为每个句子使用 textviews
并调用 OnLongClickListener()
吗?
tv.setOnLongClickListener(new OnLongClickListener(){
public boolean onLongClick(View v) {
// what to do here?
}
});
如果有任何提示,我将不胜感激!感谢您的帮助。
最佳答案
可以有多种方法来实现这种突出显示。这取决于你的选择——你是想显示一个对话框来做某事,还是显示一个小 fragment 或其他任何东西。但是要突出显示文本,您可以使用 XML 标记- 机器人:文本颜色高亮。
在 Java 端访问它- textView1.setHighlightColor(Color_Goes_Here);
要进一步阅读,请参阅文档- https://developer.android.com/reference/android/widget/TextView.html#setHighlightColor(int)
编辑:问题的澄清
只是为了确定 - 您只需要突出显示功能,或者您需要帮助创建用户选择文本时出现的弹出窗口。据我现在的了解,您应该看看 registerForContextMenu。
注册你的 TextView 使用 registerForContextMenu(_TextView_Goes_Here); 然后简单地覆盖 onCreateContextMenu()
然后可以复制、粘贴您的文本,或对文本执行任何您想要的操作。 https://developer.android.com/guide/topics/ui/menus.html
关于Android:长按时突出显示段落中的句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46656126/