Ini adalah perilaku default untuk UIViewController
iOS 7. Tampilan akan menjadi layar penuh yang berarti bilah status akan menutupi bagian atas tampilan Anda.
Jika Anda memiliki UIViewController
dalam a UINavigationController
dan navigationBar terlihat, Anda dapat memiliki kode berikut di Anda viewDidLoad
atau memiliki gambar latar belakang untuk navigationBar melakukan trik.
self.edgesForExtendedLayout = UIRectEdgeNone;
Jika Anda menyembunyikan navigationBar, maka Anda harus menyesuaikan semua elemen UIView dengan menggeser 20 poin. Saya tidak melihat solusi lain. Gunakan tata letak otomatis akan sedikit membantu.
Berikut adalah contoh kode untuk mendeteksi versi iOS, jika Anda ingin kompatibilitas ke belakang.
NSUInteger DeviceSystemMajorVersion() {
static NSUInteger _deviceSystemMajorVersion = -1;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
NSString *systemVersion = [UIDevice currentDevice].systemVersion;
_deviceSystemMajorVersion = [[systemVersion componentsSeparatedByString:@"."][0] intValue];
});
return _deviceSystemMajorVersion;
}