2017-03-24 2 views
8

Dies ist, was ich maximale Anzahl von Linien zu setzen tue:UITextView - Einstellung max Linien versteckt den Cursor

self.text_description.textContainer.maximumNumberOfLines = 2 
self.text_description.layoutManager.textContainerChangedGeometry(self.text_description.textContainer) 

Wenn 3. Zeile im Begriff ist, zu beginnen, wird der Cursor verschwindet. Um es zurück zu legen, muss ich die Rücktaste antippen.

+0

Cursor versteckt oder bleibt hinter der Tastatur? – byJeevan

Antwort

3

Unter der Annahme, in der Textansicht Cursor nicht bleibt hinter der Tastatur. Ich habe eine Hilfsmethode geschrieben, die UITextField Text zum Ende des Textes scrollen lässt.

- (void)scrollToCaretInTextView:(UITextView *)textView animated:(BOOL)animated 
{ 
    CGRect rect = [textView caretRectForPosition:textView.selectedTextRange.end]; //Get the content size of textview 
    rect.size.height += textView.textContainerInset.bottom; 
    [textView scrollRectToVisible:rect animated:animated]; 
} 
2

Ich bin nicht ganz sicher, was Sie erwarten. Wenn Sie maximal zwei Zeilen möchten, sollte keine dritte Zeile vorhanden sein. diese

Verwendung:

self.text_description.textContainer.maximumNumberOfLines = 2 
self.text_description.textContainer.lineBreakMode = .byTruncatingTail 

Limit the number of lines for UITextview

Es scheint, was Sie eigentlich wollen eine Textview mit zwei Linien Höhe? Wenn das wahr ist, versuchen Sie dies in Ihrem View-Controller.

self.text_description = UITextView(frame: CGRect(x: 100.0, y: 100.0, width: 200.0, height: 28.0)) 
self.text_description.backgroundColor = #colorLiteral(red: 0.8039215803, green: 0.8039215803, blue: 0.8039215803, alpha: 1) 
self.view.addSubview(self.text_description) 
Verwandte Themen