सभी सुझावों को पढ़ने, और कुछ चीजों की कोशिश करने के बाद, मैं निम्नलिखित चरणों का उपयोग करके विशिष्ट व्यूह-रचनाकारों के लिए काम कर सकता हूं:
पहला कदम:
अपना info.plist खोलें और NO के लिए " नियंत्रक-आधारित स्थिति बार उपस्थिति " नाम की एक नई कुंजी डालें
दूसरा चरण (सिर्फ एक स्पष्टीकरण, इसे लागू करने की आवश्यकता नहीं):
आम तौर पर हम आवेदन में निम्नलिखित कोड डालते हैं (_: didFinishLaunchingWithOptions :) AppDelegate की विधि,
स्विफ्ट 2
UIApplication.sharedApplication().statusBarStyle = .LightContent
स्विफ्ट 3
UIApplication.shared.statusBarStyle = .lightContent
लेकिन यह सभी ViewControllers के प्रभाव को प्रभावित करता है statusBarStyle
।
तो, विशिष्ट ViewControllers के लिए यह काम कैसे प्राप्त करें - अंतिम चरण:
जहाँ आप बदलना चाहते हैं, वहां व्यू कॉन्ट्रॉलर फ़ाइल खोलें statusBarStyle
और निम्नलिखित कोड डालें viewWillAppear()
,
स्विफ्ट 2
UIApplication.sharedApplication().statusBarStyle = .LightContent
स्विफ्ट 3
UIApplication.shared.statusBarStyle = .lightContent
इसके अलावा, viewWillDisappear()
उस विशिष्ट दृश्य नियंत्रक के लिए विधि को लागू करें और कोड की निम्नलिखित पंक्तियाँ डालें,
स्विफ्ट 2
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.sharedApplication().statusBarStyle = UIStatusBarStyle.Default
}
स्विफ्ट 3
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
UIApplication.shared.statusBarStyle = UIStatusBarStyle.default
}
यह कदम सबसे पहले statusBarStyle
विशिष्ट दृश्य-नियंत्रक के लिए बदल जाएगा और फिर इसे तब बदल देगा default
जब विशिष्ट दृश्य-नियंत्रक गायब हो जाएगा। लागू नहीं करने से स्थायी रूप से नए परिभाषित मूल्य में viewWillDisappear()
परिवर्तन होगाstatusBarStyle
UIStatusBarStyle.LightContent
Status bar is initially hidden = YES
info.plist फ़ाइल में सेट करते हैं , तो "नियंत्रक-आधारित स्थिति बार उपस्थिति = NO" देखें, जिससे स्थिति पट्टी छिपी हो जाएगी।