在 Flutter 中查找长按的单词
Posted
技术标签:
【中文标题】在 Flutter 中查找长按的单词【英文标题】:Find long pressed word in Flutter 【发布时间】:2020-03-27 19:12:09 【问题描述】:我在卡片中显示文本,我想添加长按功能以显示有关所选单词(长按的单词)的更多信息。哪个文本小部件支持它? SelectableText 小部件不适合,因为它使用户能够将我的所有文本复制到其他地方,我不喜欢它,我只想找出选择了哪个单词以便显示它的含义。
目前我正在使用 Html 小部件,它显然不支持 长按字。
【问题讨论】:
GestureDetector
具有onLongPressStart
属性,因此您可以获得“长”按的位置,现在您可以使用Paragraph
API 在文本中找到最接近给定位置的位置
那么我使用哪种Widget类型来显示支持Paragraph API的文本?
RichText 小部件,并使用 RenderParagraph api,而不是我之前说的 Paragraph
更新:Text
也可以使用 - Text
也使用 RenderParagraph
作为其 RenderObject
我是个新手,如何找到富文本偏移处的哪个单词
【参考方案1】:
您可以使用具有onLongPressed
方法的GestureDetector
包装您的Text
小部件。
body: Center(
child: Card(
child: GestureDetector(
child: Text('Long press'),
onLongPress: ()
// your code here
,
)
)
)
希望这能回答你的问题。
【讨论】:
这将触发一个事件,而无需实际说明点击了哪个 单词。 希望对您有所帮助:github.com/flutter/flutter/issues/5422以上是关于在 Flutter 中查找长按的单词的主要内容,如果未能解决你的问题,请参考以下文章
flutter textfield 长按输入框出现剪切/复制/粘贴的菜单如何设置中文?