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 statusBarStylesemua ViewControllers.
Jadi, bagaimana agar ini berfungsi untuk ViewControllers tertentu - Langkah Terakhir:
Buka file viewcontroller di mana Anda ingin mengubah statusBarStyledan 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 statusBarStyleuntuk viewcontroller tertentu dan kemudian mengubahnya kembali defaultketika viewcontroller tertentu menghilang. Tidak menerapkan viewWillDisappear()akan mengubah statusBarStylesecara permanen ke nilai baru yang ditentukanUIStatusBarStyle.LightContent
Status bar is initially hidden = YESfile info.plist, "Lihat tampilan status bar berbasis-controller = TIDAK" akan menyebabkan status bar menjadi tersembunyi.