将光标移动到UITextField的开头

Jus*_*zic 6 iphone uitextfield

有没有办法让光标位于UITextField的开头?

当我用内容显示控件时,光标位于字符串的末尾.我想把它移到开头.

rob*_*off 19

UITextField符合UITextInput协议,该协议提供允许您控制所选范围的方法.这适用于我的测试:

-(void)textFieldDidBeginEditing:(UITextField *)textField {
    textField.selectedTextRange = [textField
        textRangeFromPosition:textField.beginningOfDocument
        toPosition:textField.beginningOfDocument];
}
Run Code Online (Sandbox Code Playgroud)


war*_*enm 8

你正在打这个系统.UITextField没有任何公共属性来设置光标位置(实际上与当前选择的开头相关).如果您可以使用UITextView,则以下委托方法将强制光标到文本的开头.请注意,用户不会期望这种行为,您应该仔细检查您想要这样做的动机.

- (void)textViewDidBeginEditing:(UITextView *)textView {
    shouldMoveCursor = YES;
}

- (void)textViewDidChangeSelection:(UITextView *)textView {
    if(shouldMoveCursor)
    {
        NSRange beginningRange = NSMakeRange(0, 0);
        NSRange currentRange = [textView selectedRange];
        if(!NSEqualRanges(beginningRange, currentRange))
            [textView setSelectedRange:beginningRange];
        shouldMoveCursor = NO;
    }
}
Run Code Online (Sandbox Code Playgroud)

您在控制器中维护shouldMoveCursorBOOL变量在哪里.