Setelah membaca semua saran, dan mencoba beberapa hal, saya bisa membuatnya bekerja untuk viewcontrollers tertentu menggunakan langkah-langkah berikut:
Langkah pertama:
Buka info.plist Anda dan masukkan kunci baru bernama " Lihat tampilan status berbasis pengontrol " ke NO
Langkah Kedua (Hanya penjelasan, tidak perlu menerapkan ini):
Biasanya kami menempatkan kode berikut dalam aplikasi (_: didFinishLaunchingWithOptions :) metode AppDelegate,
Cepat 2
UIApplication.sharedApplication().statusBarStyle = .LightContent
Cepat 3
UIApplication.shared.statusBarStyle = .lightContent
tapi itu mempengaruhi statusBarStyle
semua ViewControllers.
Jadi, bagaimana agar ini berfungsi untuk ViewControllers tertentu - Langkah Terakhir:
Buka file viewcontroller di mana Anda ingin mengubah statusBarStyle
dan memasukkan kode berikutviewWillAppear()
,
Cepat 2
UIApplication.sharedApplication().statusBarStyle = .LightContent
Cepat 3
UIApplication.shared.statusBarStyle = .lightContent
Juga, terapkan viewWillDisappear()
metode untuk viewController tertentu dan letakkan baris kode berikut,
Cepat 2
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.Default
}
Cepat 3
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.shared.statusBarStyle = UIStatusBarStyle.default
}
Langkah ini pertama-tama akan mengubah statusBarStyle
untuk viewcontroller tertentu dan kemudian mengubahnya kembali default
ketika viewcontroller tertentu menghilang. Tidak menerapkan viewWillDisappear()
akan mengubah statusBarStyle
secara permanen ke nilai baru yang ditentukanUIStatusBarStyle.LightContent
Status bar is initially hidden = YES
file info.plist, "Lihat tampilan status bar berbasis-controller = TIDAK" akan menyebabkan status bar menjadi tersembunyi.