2015-09-10 9 views
6

के अंदर एक स्प्लिट व्यू कंट्रोलर रखता है, तो नेविगेशन बार और टैब बार बाईं तरफ गहरे रंग के होते हैं। मैंने एक स्क्रीनशॉट संलग्न किया है। मैंने इसे मास्टर-विवरण एप्लिकेशन बनाकर और फिर टैब बार नियंत्रक जोड़कर बनाया है। आप इस मुद्दे को कैसे ठीक करते हैं?स्प्लिट व्यू कंट्रोलर के लिए नेविगेशन बार एक टैब बार कंट्रोलर

enter image description here

+0

मुझे पता चला कि मास्टर व्यू कंट्रोलर नेविगेशन बार और टैब बार के नीचे विस्तार नहीं कर रहा है, इसलिए यह मास्टर व्यू कंट्रोलर के बजाय स्प्लिट व्यू कंट्रोलर से पृष्ठभूमि रंग उठा रहा है, यही कारण है कि यह गहरा है। –

+0

व्यू डीबगर दिखाता है कि मास्टर वास्तव में सलाखों के नीचे विस्तार कर रहा है। किसी कारण से बार सही ढंग से चित्र नहीं आ रहे हैं। क्या आपको इस समस्या का समाधान मिला? – Joey

+1

नहीं, यह एक बग है। मैंने इसे एक ऐप्पल इंजीनियर को दिखाया। जब मैंने पोस्ट किया तो मैंने इसे वापस लॉग किया लेकिन उन्होंने इसे ठीक नहीं किया है और ऐसा कोई प्रतीत नहीं होता है। –

उत्तर

0

सफेद करने के लिए नेविगेशन नियंत्रक के दृश्य पृष्ठभूमि रंग सेट करें:

self.navigationController?.view.backgroundColor = UIColor.whiteColor() 

यह हल्के भूरे रंग के रंग भी सुरक्षित रहेंगे।

तुम भी translucency निष्क्रिय कर सकते हैं, लेकिन फिर नेविगेशन पट्टी सफेद हो जाएगा:

self.navigationController?.navigationBar.translucent = false 

जवाब इस स्टैक ओवरफ़्लो सवाल से आते हैं: Dark shadow on navigation bar during segue transition after upgrading to Xcode 5.1 and iOS 7.1

+0

यह मेरे लिए समस्या का समाधान नहीं करता है ... –

3

लिखने के समय (मई 2017) यह बग अभी भी मौजूद है। मुझे विश्वास नहीं है कि ऐप्पल इसका ख्याल नहीं रखता है। सबसे बुरा हिस्सा यह है कि यदि आप अपने डिवाइस को घुमाते हैं, तो मास्टर को तरफ से खोलें और पीछे घुमाएं, पारदर्शी सलाखों को स्थानांतरित करें और अचानक मास्टर के पास एक पारदर्शी पारदर्शी बार है और विवरण नहीं है। :/

एकमात्र संभव फिक्स मैं साथ आने में सक्षम था, UITabBarController से छुटकारा पाने के लिए और नीचे एक UITabBarroll के साथ एक सादे UIViewController का उपयोग करके एक टैब बार नियंत्रक का अपना कार्यान्वयन बनाना और UIViewController रोकथाम API ।

इसका मतलब है पहिया को फिर से शुरू करने के लिए बहुत सारे कोडिंग। UITabBarController का उपयोग न करने के लिए यह उदास है लेकिन यह कैसे है। आपको कंटेनर कंट्रोलर और इसकी सभी अच्छी सुविधाओं जैसे कि "मोर" कंट्रोलर के बीच एक व्यापार बंद करना है, जिसे आप मुफ्त बनाम पारदर्शी सलाखों के लिए प्राप्त करते हैं।

यदि आप पारदर्शी सलाखों के बिना जी सकते हैं, तो भी मैं सभी कोडिंग करने पर UITabBarController के लिए जाऊंगा। दूसरी ओर, कोई UITabBar को UICollectionView के साथ प्रतिस्थापित कर सकता है और "अधिक" नियंत्रक की आवश्यकता के बिना 6 से अधिक आइटम हो सकता है।

संबंधित मुद्दे