5

Mam UITextView wewnątrz UIViewController, który używa automatycznego układu, aby przypiąć go do 0 ze wszystkich stron (więc wypełnia cały ekran). Mam również ten widok pchany przy użyciu UINavigationController.UITextView content going under UINavigationBar

Występuje dziwny błąd, gdy jeśli UITextView ma wystarczającą ilość tekstu, aby zniknął z ekranu, zawartość zostanie ustawiona pod UINavigationBar. Jeśli nie ma wystarczającej ilości tekstu, aby wypełnić ekran, układ tekstu nie przechodzi pod UINavigationBar.

Oto, co się dzieje, gdy jest wystarczająco dużo tekstu, który znika z ekranu i trzeba przewinąć, aby wyświetlić wszystkie.

enter image description here

Próbowałem:

  • Ustawianie wstawka treści o UITextView.

  • Upewniłem się, że UINavigationBar nie jest prześwitujący.

  • próbowano ustawienie to self.automaticallyAdjustsScrollViewInsets = NO;

Odpowiedz

2

Wewnątrz viewDidLoad z viewController gdzie TextView jest, dodać to:

self.edgesForExtendedLayout = UIRectEdgeNone; 
+0

To nie działa. Po prostu tekst zostaje zatrzymany pod UINavigationBar :(dziękuję za sugestię: – random

+0

Czy próbowałeś ustawić zarówno self.edgesForExtendedLayout = UIRectEdgeNone, jak i self.automaticallyAdjustsScrollViewInsets = NO;? Jeśli utknął tekst pod paskiem navigationBar, domyślam się, że dodałem insets do textView przyniesie to poniżej nawigacjiBar – Uros19

+0

Tak, próbowałem to również, ale to nie działa.Jakie jest jeszcze dziwniejsze, że ustawienie zawartości nadal nie ma wpływu.Zawsze zaczyna się pod 'UINavigationBar' .Po przewinięciu go w dół chociaż ustawiona jest zawartość, wypróbowałem także 'scrollRangeToVisible', który również nie działa. – random

0

Nie jestem pewien, dlaczego problem był występujących ale to naprawić go:

- (void)viewDidLayoutSubviews { 
    if (self.textView) { 
     [self.textView scrollRectToVisible:CGRectMake(0, 0, 1, 1) animated:NO]; 
    } 
}