2012-05-05 8 views
6

Ich habe eine große UITextView, fast Vollbild. Wenn ich darauf tippe, erscheint die Tastatur und ich kann den Text bearbeiten. Je länger ich jedoch tippe, desto mehr läuft der Text hinter der Tastatur in die Ansicht. Ich kann nicht mehr sehen, was ich tippe.UITextView, während der Bearbeitung blättern?

Wie gehen Sie damit um? Müssen Sie die Cursorposition verfolgen und die Ansicht manuell scrollen?

Antwort

5

Ich denke, Sie müssen Größe Ihrer UITextView als Tastatur zeigt/versteckt. Die Tastatur wird also nicht über Ihrer Textansicht liegen. Hier sind die Beispielcodes.

- (void)viewDidLoad 
{ 
    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(keyboardWillShow:) 
               name:UIKeyboardWillShowNotification 
               object:nil]; 
    [[NSNotificationCenter defaultCenter] addObserver:self 
              selector:@selector(keyboardWillHide:) 
               name:UIKeyboardWillHideNotification 
               object:nil]; 
} 

- (void)keyboardWillShow:(NSNotification *)notification 
{ 
    [UIView beginAnimations:nil context:nil]; 
    CGRect endRect = [[notification.userInfo objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue]; 
    CGRect newRect = YOUT_TEXT_VIEW.frame; 
    //Down size your text view 
    newRect.size.height -= endRect.size.height; 
    YOUT_TEXT_VIEW.frame = newRect; 
    [UIView commitAnimations]; 
} 

- (void)keyboardWillHide:(NSNotification *)notification 
{ 
    ... // Resize your textview when keyboard is going to hide 
} 
+0

Danke Lieber Thant Thet. – jamil

7

Sie benötigen folgenden Code für scroll down Textview zu verwenden, nach Textbereich (oder sagen nach der Eingabe)

NSRange range = NSMakeRange(textView.text.length - 1, 1); 
[textView scrollRangeToVisible:range]; 

Hoffnung, dies wird Ihnen helfen, ...

+0

Danke für die Antwort..aber ich habe Link, was ich tun möchte .. darunter Link, die Arbeit gut ist. – jamil

+3

https://developer.apple.com/library/ios/#samplecode/KeyboardAccessory/Listings/Classes_ViewController_m.html – jamil

+3

@ user1328096 Für Nachwelt können Sie die Lösung zu Ihrer Frage als eine richtige Antwort schreiben? (Und vergiss nicht, einige Antworten zu akzeptieren!) –

Verwandte Themen