CGRect cgRect1 = [[UIScreen mainScreen] applicationFrame];
UISearchBar *mySearchBar = [[UISearchBar alloc]
initWithFrame:CGRectMake(0, 0, cgRect.size.width, 40)];
mySearchBar.autoresizingMask =
UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight ;
UITableView *myTableView = [[UITableView alloc]
initWithFrame:CGRectMake(0, 40, cgRect.size.width, cgRect.size.height-40)];
myTableView.autoresizingMask =
UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
[self.view addSubview:mySearchBar];
[self.view addSubview:myTableView];
Di versi sebelumnya, ini berfungsi dengan benar. Bilah pencarian muncul di bawah statusbar
bilah navigasi dan. Ini tableview
muncul di bawah bilah pencarian
Tetapi ketika saya menjalankan ini Xcode 5 sdk iOS 7
, bilah pencarian tidak terlihat (menurut saya ditempatkan di bawah bilah status dan bilah navigasi), dan juga bilah navigasi muncul di atas tampilan tabel.
Apakah akan diperbaiki dengan iOS 7
rilis stabil?
Atau apakah ini masalah pengkodean saya?
Atau harus kita menanganinya dengan menambahkan y (y = statubar height + nav bar height)
nilai iOS 7
?
Saya baru-baru ini mengunduh Xcode 5 DP untuk menguji aplikasi saya di iOS 7. Hal pertama yang saya perhatikan dan konfirmasikan adalah bahwa batas tampilan saya tidak selalu diubah ukurannya ke akun untuk bilah status dan bilah navigasi.
Di viewDidLayoutSubviews, saya mencetak batas tampilan:
{{0, 0}, {320, 568}}
Ini mengakibatkan konten saya muncul di bawah bilah navigasi dan bilah status.
Saya tahu saya bisa menghitung sendiri tinggi badan dengan mendapatkan tinggi layar utama, mengurangkan tinggi bilah status dan tinggi bilah navigasi, tetapi sepertinya itu pekerjaan tambahan yang tidak perlu.
Apakah ada orang lain yang mengalami masalah ini?
MEMPERBARUI:
Saya telah menemukan solusi untuk masalah khusus ini. Setel properti tembus bilah navigasi ke TIDAK:
self.navigationController.navigationBar.translucent = NO;
Ini akan memperbaiki tampilan agar tidak dibingkai di bawah bilah navigasi dan bilah status.
Namun, saya belum menemukan perbaikan untuk kasus ketika Anda ingin bilah navigasi menjadi tembus cahaya. Misalnya, melihat foto layar penuh, saya ingin bilah navigasi tembus, dan tampilan dibingkai di bawahnya. Itu berfungsi, tetapi ketika saya beralih menampilkan / menyembunyikan bilah navigasi, saya telah mengalami hasil yang lebih aneh. Subview pertama (a UIScrollView
) mendapatkan batasan asal y berubah setiap waktu.