में स्थिति बार को गतिशील रूप से छुपाते समय अंतराल/स्क्रीन फ्रीज करता है मैं वर्तमान में Scroll View
का उपयोग विभिन्न पृष्ठों के साथ कर रहा हूं। मैं एक विशिष्ट पृष्ठ पर Status Bar
को छिपाने का लक्ष्य रख रहा हूं। वास्तव में अंतराल और स्क्रीन हर बार Status Bar
फिर से प्रकट/गायब होने वाला है।स्क्रॉल व्यू (स्विफ्ट 3)
सबसे पहले मैं परिभाषित दो चर
private var currentPage = 0
private var isStatusBarPreferablyHidden = true
मैं तो स्क्रॉल देखें प्रतिनिधि से दो कार्यों के लिए इस्तेमाल किया setNeedsStatusBarAppearanceUpdate
कॉल करने के लिए उपयोगकर्ता पहले पृष्ठ
यह मेरा दृष्टिकोण है
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let currentScrollPosition : CGFloat = self.navigation.contentOffset.x/self.navigation.frame.size.width
currentPage = lroundf(Float(currentScrollPosition))
}
func scrollViewWillBeginDecelerating(_ scrollView: UIScrollView) {
if currentPage == 0 {
isStatusBarPreferablyHidden = true
} else {
isStatusBarPreferablyHidden = false
}
self.setNeedsStatusBarAppearanceUpdate()
}
अंत में मैं स्टेटस बार की उपस्थिति को अपडेट करने के लिए स्टेटस बार फ़ंक्शंस को ओवरराइड करता हूं।
override var prefersStatusBarHidden: Bool {
return isStatusBarPreferablyHidden
}
override var preferredStatusBarUpdateAnimation: UIStatusBarAnimation {
return UIStatusBarAnimation.none
}
यह कुछ भी नहीं बदलेगा! वही लग रहा है, उचित रूप से भी काम नहीं कर रहा है। मुझे खेद है लेकिन यह जवाब कुछ हल नहीं करता है-.- – Devapploper
@ डेवप्लपर आप अंतराल से क्या मतलब है। मैं आपके कोड का परीक्षण करता हूं। मैं 'scrollViewWillBeginDragging' में बदल जाने के बाद यह ठीक हो जाता है। –
जब भी स्टेटसबार बदलने वाला है, स्क्रॉल व्यू और अन्य सभी चीजें लगभग 1/2 सेसेंड के लिए जमा हो जाती हैं। यह प्रयुक्त प्रतिनिधि विधि – Devapploper