Gdy masz UITableView wewnątrz kontrolera UIViewController, musisz wyłączyć flagę AutomaticAdjustsScrollViewInsets (w edytorze kodów lub scenorysów), aby uzyskać górną przestrzeń, aby nie ominąć górnego paska. Mam teraz UIViewController dziecko przy użyciu "osadzić" seque wewnątrz widoku podrzędnego, który zawiera UITableView. Widzę "przestrzeń" (żółty obszar), ale wyczyściłem wszystkie flagi we wbudowanym UIViewController i nawet wyczyściłem flagę ręcznie w prepareForSeque, ale przestrzeń pozostaje. Czy jest coś jeszcze, co trzeba zrobić, czy jest to błąd?automaticAdjustsScrollViewInsets nie działa w osadzonym elemencie UITableViewController z UITableView
Odpowiedz
Gdyby ten problem dziś rano.
Okazuje się, trzeba odznaczyć automaticallyAdjustsScrollViewInsets nieruchomość od parentViewController zamiast dziecka podczas korzystania z trybu widoku wbudowanego kontrolera jak ty.
Oto moja konstrukcja UI:
ParentViewController ma widok kontenera, które wskazują na ChildViewController (podklasa UITableViewController).
Odznacz automaticallyAdjustsScrollViewInsets w ChildViewController: nie pracują
Odznacz automaticallyAdjustsScrollViewInsets w ParentViewController: prace!
Długo walczyłem z tym do godziny, aż zdałem sobie sprawę, że odpowiedź @ user3188985 była, co się dzieje, ale rozwiązanie nie działa dla mnie.
Jest tak dlatego, że mam dwa kontrolery widoku, które zawierają scrollViews i chcę je dopasować, a jedno nie, co zrobić?
Jeśli wyłączysz automatyczne dostosowanie w kontrolerze nadrzędnym, musisz ręcznie dostosować jeden potrzebny scrollView, np. ustawienie contentInset w odpowiednich przypadkach.
Jeśli zostawisz na automatycznej regulacji w nadrzędnej, I odkryli, że manekina Scrollview, z zerowym ramy, ukryta, wszystkie właściwości przewijania ustawiona na NIE, a jeśli jest, zanim widoczny/włączony Scrollview w hierarchia widoku kontrolera widoku podrzędnego, a następnie otrzyma automatyczne dostosowanie i pozostawi twój widoczny widok scrollView sam.
Alternatywnie możesz po prostu ustawić najbardziej widoczny widok kontrolera widoku jako przewijany widok z przewijaniem wyłączonym i mieć włączony inny scrollView z włączonym przewijaniem, co pozwoli osiągnąć to samo, co podejście "fałszywe".
Co można zobaczyć tutaj, jest to, że flaga automatycznej regulacji z jedynego rodzica widoku kontrolera jest brane pod uwagę, ale to własna hierarchia widok kontroler jest przesuwany znaleźć scrollViews do regulacji zawartej w każdym kontrolerze. Jest to po prostu niechciane zachowanie UIKit.Byłoby dobrze, gdyby ustawienie automatycznej regulacji każdego kontrolera podrzędnego zostało sprawdzone przed podjęciem decyzji o pomieszaniu z nim:/
- 1. jak używać UITableView bez UITableViewController
- 2. Używanie podklasy UITableView z kontrolerem UITableViewController
- 3. Jak ukryć dymek adresu w osadzonym elemencie iframe Map Google?
- 4. Wygląd UITableView z UIAppearance ios5 nie działa poprawnie?
- 5. sendSubviewToBack na UITableView nie działa poprawnie w iOS 11
- 6. W UITableView, cell.detailTextLabel.text nie działa ... dlaczego?
- 7. Klawiatura UITableViewController i UITextField
- 8. W metodzie canEditRowAtIndexPath, reloadData z UITableView nie działa poprawnie?
- 9. Podklasa UIViewController (naśladuje UITableViewController) nie zostaje zwolniona.
- 10. Nie można zaktualizować UITableView
- 11. NSTimer nie działa podczas przeciągania UITableView
- 12. UITableViewController vs TableView
- 13. iOS UITableView scrollToRowAtIndexPath nie działa już
- 14. Dlaczego sprawdzamy, czy (komórka == zero) w UITableViewController?
- 15. Ukryj opcje w elemencie select, nie działa w IE?
- 16. Przycisk wewnątrz niestandardowej komórki uitableview nie działa
- 17. „upsert” w osadzonym dokumentu
- 18. Swift wielu podklas komórek w UITableViewCOntroller
- 19. nagłówek wyboru uitableviewcontroller dla sekcji
- 20. iPhone, dlaczego nie działa reloadData UITableView?
- 21. json.net SelectToken z osadzonym "."
- 22. UITableViewController Obraz w tle
- 23. Nie można zmienić wysokości UITableView
- 24. UINavigationBar przeskakuje z dużego tytułu na mały podczas przesuwania do UIViewController z osadzonym UITableView iOS 11
- 25. Dodaj przycisk na UITableViewController (Swift)
- 26. Limit w dokumencie osadzonym
- 27. UITableViewController awarii na symulatorze iOS6
- 28. Zwrócić NSIndexPath z komórki niestandardowej? (UITableView)
- 29. Funkcje kopiuj/wklej w UITableViewController
- 30. UIMenuController metoda setTargetRect: INview: nie działa w UITableView
Ten żółty obszar jest częścią osadzonego VC lub rodzica VC? – orkenstein
Osadzone, to jest puste miejsce u góry widoku tabeli. – ahwulf
Co to jest ramka widoku tabeli? Sprawdź to w 'viewDidAppear'. – orkenstein