【发布时间】:2013-12-04 20:21:54
【问题描述】:
我正在编辑 UITextView 中的文本。当该字段打开进行编辑时,我需要将光标定位在现有文本的最后一个字符之后。我看到的行为是光标或多或少位于我触摸 UITextView 以开始编辑的点下方——也许在我触摸的单词的末尾。我尝试在 textViewDidBeginEditing: 和 textViewShouldBeginEditing: 中设置 textview.selectedRange ,但这根本没有效果。我尝试选择现有文本的范围,例如 {1,2},但这也没有做任何事情。看起来 selectedRange 或多或少是一个只读值?
- (void) textViewDidBeginEditing:(UITextView *)textView {
// Position the insertion cursor at the end of any existing text
NSRange insertionPoint = NSMakeRange([textView.text length], 0);
textView.selectedRange = insertionPoint;
}
如何将光标移到文本末尾?
【问题讨论】:
-
感谢 artud2000。对我有用的答案是在 UITextView 和点击处理程序中放置一个 UITapGestureRecognizer 以将文本视图设置为第一响应者。在这种情况下,光标的“自然”位置是在现有文本的末尾。
-
是的,有时需要编写代码来触发或检测 UIControl 元素通常行为之上的事件。
标签: ios ios7 uitextview