0

ある条件に基づいてカーソル位置を特定の長さに動的に変更するUITextFieldにはどうすればよいですか?

4

2 に答える 2

1

を使用しtextview.selectedRangeます。

NSRange selection = [textview.text rangeOfString:@"SomeText" options:NSCaseInsensitiveSearch];
if( selection.location != NSNotFound ){
    textview.selectedRange =  selection;
    textview.selectedRange = NSMakeRange(selection.location, 0);
}

それはあなたを助けるかもしれません

于 2012-10-10T11:28:10.847 に答える
0

このリンクを使用すると、問題の解決に役立つ可能性があります。それが役に立つことを願っています!! :)

新しいテキストを設定するときに UITextField のカーソルを変更する

また、UITextFieldでカーソル位置を見つける

// Get the selected text range
    UITextRange *selectedRange = [self selectedTextRange];

    // Calculate the existing position, relative to the end of the field (will be a - number)
    int pos = [self offsetFromPosition:self.endOfDocument toPosition:selectedRange.start];

    // Change the text
    self.text = lastValidated; 

    // Work out the position based by offsetting the end of the field to the same
    // offset we had before editing
    UITextPosition *newPos = [self positionFromPosition:self.endOfDocument offset:pos];

    // Reselect the range, to move the cursor to that position
    self.selectedTextRange = [self textRangeFromPosition:newPos toPosition:newPos];

幸せなコーディング....

于 2012-10-10T11:24:40.917 に答える