2014-09-11 14 views
23

क्या किसी ने देखा है कि आईफोन 6 सिम्युलेटर के लिए स्टेटस बार रंग सही शैली का उपयोग नहीं कर रहा है?आईफोन 6 स्टेटस बार रंग

मेरे पास UIStatusBarStyleUIStatusBarStyleLightContent और UIViewControllerBasedStatusBarAppearance पर सेट NO पर सेट है।

यह 6 और 6 प्लस को छोड़कर आईओएस 8 पर सभी फोन के लिए ठीक काम करता है। मेरे ऐपडिलेगेट में मैं इसे UIApplication.sharedApplication().setStatusBarStyle(.LightContent, animated: false) का उपयोग करके सेट करने में सक्षम हूं लेकिन यह इसे लॉन्च स्क्रीन के लिए सेट नहीं करता है। जब भी मुझे हल्की सामग्री चाहिए तो यह अभी भी अंधेरा चाहता है। क्या किसी के पास इसके लिए एक फिक्स है। क्या कोई नया आइटम है जिसे मुझे प्लेस्ट जोड़ने की ज़रूरत है?

+2

एक ही समस्या होने पर, आश्चर्य है कि यह सिम्युलेटर बग या कुछ और है? – JeffN

+0

मुझे एक सिम्युलेटर मुद्दा की तरह लग रहा है। – db42

+2

यहां एक ही समस्या है। लेकिन यह केवल लॉन्च पर है। एक बार दृश्य लोड होने के बाद यह सफेद हो जाता है। –

उत्तर

15

एक विकल्प plist में YES को UIViewControllerBasedStatusBarAppearance स्थापित करने के लिए है, और फिर प्रत्येक दृश्य नियंत्रक में यह पिछवाड़े में एक दर्द करने के लिए निश्चित रूप से सबसे अच्छा समाधान नहीं है और इस विधि

- (UIStatusBarStyle) preferredStatusBarStyle { 
    return UIStatusBarStyleLightContent; 
} 

है। जैसा कि यह खड़ा है, यह मेरे सभी दृश्य नियंत्रकों पर काम करता है लेकिन एक, जिसे मैं अभी भी इसके लिए एक वैकल्पिक समाधान की तलाश में हूं।

संपादित

मिले एक बेहतर समाधान। प्लेस्ट में UIViewControllerBasedStatusBarAppearance से NO और Status bar style से UIStatusBarStyleLightContent पर रखें, फिर छवि संपत्तियों से + -> New Launch Image चुनकर सही लॉन्च छवि जोड़ें। यह आईफोन 6/6 + को ऐप को स्क्रीन आकार तक स्केल करने से रोक देगा और लाइट स्टेटस बार दिखाएगा। सही स्क्रीन आकार हैं:

iPhone 4/4S: 640x960 px 
iPhone 5/5S: 640x1136 px 
iPhone 6: 750x1334 px (edited) 
iPhone 6+: 1242x2208 px 

मैं इसके लिए क्रेडिट नहीं ले सकता, बस यह प्रमाणित करता हूं कि यह काम करता है। यहां वह स्थान है जहां मुझे समाधान मिला https://stackoverflow.com/a/25985800/3247035 और http://beageek.biz/how-to-create-launch-images-app-xcode-ios/

+0

मेरे मामले में मुझे अपने स्टोरीबोर्ड में अपने UINavigationControllers को उप-वर्ग करना पड़ा और पसंदीदाStatusBarStyle विधि को वहां रखा गया। इसे नेविगेशन के नियंत्रकों में डालकर कुछ भी नहीं हुआ। –

+0

@pfryerda द्वारा पहला समाधान मेरी समस्याओं का समाधान करता है और यह इतना अतिरिक्त काम नहीं है। – MartinR

0

pfryerda उत्तर लॉन्च छवि समस्या के समाधान के साथ सही है। मैंने बिना किसी जानकारी के अपने मुद्दे को ठीक किया। मैंने सामान्य जानकारी टैब के नए Launch Screen File अनुभाग का उपयोग किया और अपनी लॉन्च स्क्रीन को अपना अलग स्टोरीबोर्ड सेट करने के लिए सेट किया। स्टोरीबोर्ड में मैंने एक दृश्य बनाया जो पूर्ण स्क्रीन पर बदल गया और मुझे पता है कि लॉन्च स्क्रीन हमेशा सही आकार के बाद से यह समस्या है।

बस कैसे एक प्रक्षेपण स्क्रीन कहानी बोर्ड बनाने के लिए पर संक्षिप्त करने के लिए

:

  1. LaunchScreen.storyboard नाम के एक खाली स्टोरीबोर्ड फ़ाइल बनाएँ।

  2. अपनी लक्षित सेटिंग्स पर जाएं और, सामान्य टैब पर, स्टोरीबोर्ड को अपनी लॉन्च स्क्रीन फ़ाइल के रूप में चुनें। एक्सकोड आपके ऐप की Info.plist पर एक संबंधित UILaunchStoryboardName कुंजी जोड़ देगा। जब यह कुंजी मौजूद होती है, तो एक्सकोड इसे आपके द्वारा सेट की गई किसी भी लॉन्च छवियों पर प्राथमिकता देगा।

  3. स्टोरीबोर्ड पर एक दृश्य नियंत्रक दृश्य जोड़ें। दृश्य में कुछ सबव्यू जोड़ें और बाधाओं के साथ उन्हें स्थिति दें। जब आप किसी डिवाइस पर ऐप लॉन्च करते हैं, तो ओएस को लॉन्च स्क्रीन के रूप में दृश्य का उपयोग करना चाहिए।

आप और अधिक यहाँ पता कर सकते हैं: http://oleb.net/blog/2014/08/replacing-launch-images-with-storyboards/

1

मैं भी this post के जवाब में यह उल्लेख किया है, लेकिन आसपास मैंने पाया केवल काम iPhone 6 और उपयोग करने के लिए अपने अनुप्रयोग कन्वर्ट करने के लिए है 6 + संपत्ति।

एक बार जब आप अपने परिसंपत्ति प्रबंधक में सही ढंग से लोड की गई लोडिंग स्क्रीन संपत्तियां प्रदान करते हैं, तो आपका ऐप आपकी स्टेटस बार शैली सेटिंग्स का सम्मान करेगा।

https://developer.apple.com/library/iOS/documentation/userexperience/conceptual/mobilehig/LaunchImages.html

For iPhone 6: 

750 x 1334 (@2x) for portrait 
1334 x 750 (@2x) for landscape 

For iPhone 6 Plus: 

1242 x 2208 (@3x) for portrait 
2208 x 1242 (@3x) for landscape 

से तुम भी दोहरी जांच आप UIStatusBarStyleLightContent करने के लिए अपने स्थिति पट्टी शैली सेट कर रहे हैं कि चाहिए। अपनी परियोजना के भीतर सभी लागू UIViewController के दशक में: यह दो तरह से किया जा सकता है:

  • अपने आवेदन की Info.plist सेट UIStatusBarStyle = UIStatusBarStyleLightContent
  • अवहेलना विधि preferredStatusBarStyle में।
7

मैं एक ही समस्या थी और

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    [self setNeedsStatusBarAppearanceUpdate]; 
} 

-(UIStatusBarStyle)preferredStatusBarStyle{ 
    return UIStatusBarStyleLightContent; 
} 

मैं आलसी हूँ द्वारा हल (इस विकल्प के लिए, सुनिश्चित करें कि आपके आवेदन के Info.plist में आप UIViewControllerBasedStatusBarAppearance कर = हाँ), तो मैं एक बनाया इसे जोड़ने के लिए नियंत्रक और अन्य सभी इसे प्राप्त करते हैं

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