UITextView ausrichten von text vertikal zentrieren
Ich soll ausrichten, text vertikal zentrieren in UItextView
.
Ich bin mit dem folgenden code
UITextView *tv = object;
CGFloat topCorrect = ([tv bounds].size.height - [tv contentSize].height * [tv zoomScale])/2.0;
topCorrect = ( topCorrect < 0.0 ? 0.0 : topCorrect );
tv.contentOffset = (CGPoint){.x = 0, .y = -topCorrect}
;
Irgendwie das funktioniert nicht in iOS 5 als contentSize kehrte dort anders ist, was ich in iOS6.
Jede Idee, warum contentSize
von der gleichen textView ist anders in iOS 5 und iOS 6?
- Mögliche Duplikate von Center text vertikal in einer UITextView
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hinzufügen Beobachter für die contentSize Schlüssel-Wert der UITextView, wenn die Ansicht geladen :-
Passen Sie die contentOffset jedes mal, wenn die contentSize Wert ändern :-
Hoffe es hilft dir...
Können Sie nehmen-Anleitung von
https://github.com/HansPinckaers/GrowingTextView
UITableView
. Funktioniert gut auf ios8 aber auch braucht, um zu entfernen Beobachter nach der Ausrichtung erfolgt. Fügen Sie folgende Zeile als Letzte ZeileobserveValueForKeyPath
Methode:[tv removeObserver:self forKeyPath:@"contentSize"];
versuchen, diese auf observeValueForKeyPath Methode auf iOS7:
definiert werden:
Habe ich geändert Arpit Lösung, so kann es passen mit dem ausbau der textview contentView