ios - 仅选择整个单词 uiTextView

标签 ios uitextview cpu-word selection

我目前正在实现翻译应用程序。一个是当用户从 UITextView 中选择一个词时,应用程序会翻译成另一种语言。

我想将选择选项限制为仅整个单词,例如:

“Hello World”而不是“Hello Wo”

在字典中定义单词时类似于 iOS Kindle 应用程序。

我的 .h 文件中有 UITextViewDelegate。

我目前在我的 .m 中有:

- (void)textViewDidChangeSelection:(UITextView *)textView{
    [self translate];
}

- (void)translate {

    if(![[self.descriptionTextView selectedTextRange] isEmpty]) {

        NSString * selectedWord = [self.descriptionTextView textInRange:[self.descriptionTextView selectedTextRange]];

 ...

然后我继续将其转换为 encodedString 并触发 Google Translate API。有没有办法只从 UITextView 中选择整个单词?这样选择就会以整个单词 block 的形式递增。

最佳答案

您可以将自己添加为文本字段的inputDelegate 并实现selectionDidChange:。当选择发生变化时,您可以使用 positionWithinRange:atCharacterOffset: 来调查选定范围周围的空白区域。找到所需范围后,您可以更新 selectedTextRange

关于ios - 仅选择整个单词 uiTextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21512310/

相关文章:

python - 循环不会像读取字符串中的其他单词那样读取第一个单词

jquery - 针对正文中的特定单词并对其应用样式?

iOS 设备不显示在 Xcode 6.1.1 上 - 直到重新启动 Mac 之后

swift - UITextView,订单号与标题和内容之间的距离 - Swift

ios - 如何让UITableView变灰?

iphone - 在 UITextView 中垂直居中文本

ios - 动态TableView链接到文本

document - 如何使用 models.hdpmodel 获取文档主题 – gensim 中的分层狄利克雷过程

iphone - 这个方法背后的代码在哪里

ios - 在 TabBarController 项中有一个 NavigationController