Ho una semplice applicazione a schede la cui prima scheda è una UITableViewController
. Dopo aver inserito alcuni dati, ho notato che la parte superiore della vista tabella si sovrappone alla barra di stato.ios UITableViewController barra di stato sovrapposta
Ho provato a fare scherzi con lo edgesForExtendedLayout
e impostazioni simili, ma non ho trovato la combo magica. Qualcuno sa come correggere questo?
Procedura per riprodurre:
- creare una nuova applicazione a schede
- Rimuovere la prima scheda
UIViewController
e sostituirlo con unUITableViewController
- Popolare il
UITableView
con alcuni dati - eseguire l'applicazione
Ecco un paio di schermate del setup e t egli problema:
Grazie. Sono sorpreso che questo non sia il default. (Apple dovrebbe controllare la barra di stato e impostarla di conseguenza). Ho risolto con 'tableView.contentInset.top = UIApplication.sharedApplication(). StatusBarFrame.height' perché non mi piacciono i numeri magici :) –
E hai ragione su quella. ;) Bene, la ragione è che (dal momento che iOS 7) le viste estendono i loro bordi per l'intero schermo di default. Se incorpori la vista in un controller di navigazione, vedrai che la barra di navigazione viene presa in considerazione automaticamente (chiamata "guida al layout top"). –
probabilmente vorrai impostare scrollIndicatorInsets anche – Janneman