2015-10-02 14 views
6

में कस्टम एनीमेशन मैंने स्विफ्ट का उपयोग कर एक्सकोड 7 में एक नई परियोजना बनाई है। मैंने देखा कि लॉन्च स्क्रीन स्टोरीबोर्ड फ़ाइल में संग्रहीत है।लॉन्च स्क्रीन

तो मुझे लगता है कि इसे मेरे CustomLauchScreenViewController पर संदर्भित करके अनुकूलित किया जा सकता है।

Launch screens may not set custom classnames

तो LaunchScreen अनुकूलित करने के लिए सबसे अच्छा तरीका क्या है: हालांकि, जब मैं LaunchScreen.storyboard में कस्टम वर्ग के नाम निर्धारित करते हैं, यह एक त्रुटि फेंकता है? मैं मुख्य स्क्रीन लॉन्च करने से पहले कुछ डेटा लोड करने के लिए लॉन्चस्क्रीन का उपयोग करना चाहता हूं।

+1

किंग गेम्स (कैंडी, सोडा, डिगर इत्यादि) जैसे कुछ स्पलैश (लॉन्च छवि) के लिए एक छवि का उपयोग करते हैं। जब आपके पास नियंत्रण एक वीसी लोड होता है जिसमें आपका कस्टम काम (एनिमेशन या माध्यमिक छवियां) होती है और अंत में आपका एप्लिकेशन लोड होता है। –

उत्तर

10

यह लॉन्च स्क्रीन का उद्देश्य नहीं है। यदि आप लॉन्च स्क्रीन के रूप में अपना पहला प्रारंभिक दृश्य नियंत्रक 'एक्ट' रखते हैं तो आप क्या कर सकते हैं। बस इसे लॉन्च छवि के समान छवि प्रदर्शित करें और ऐसा करें जो आपको वहां करने की ज़रूरत है। एक बार पूरा हो जाने के बाद, वहां से अपने मुख्य दृश्य नियंत्रक पर जाएं।

+0

तो, लॉन्च स्क्रीन का उपयोग मुख्य स्क्रीन लॉन्च करने से पहले कुछ डिफ़ॉल्ट डेटा तैयार करने के लिए नहीं किया जाता है? यदि हां, तो "लॉन्च स्क्रीन" शब्द काफी बेकार है। – chipbk10

+2

ठीक है, एक अर्थ के लिए यह है; लेकिन ऐप्पल के स्टार्टअप कोड के लिए, हमारे कोड के लिए नहीं। यदि हम मुख्य ऐप शुरू होने से पहले हमारे कोड को सेटअप करना चाहते हैं; जैसा कि मैंने ऊपर सुझाव दिया है हमें करने की ज़रूरत है। – Tander

+0

यदि हां, तो मुझे अपनी प्रोजेक्ट में "लॉन्च स्क्रीन" के संबंध में सभी जेनरेट की गई फ़ाइलों, विशेषताओं को हटा देना चाहिए। – chipbk10

2

लॉन्च स्क्रीन आपके ऐप को लोड होने के दौरान स्प्रिंगबोर्ड से आपके ऐप में संक्रमण प्रदान करने के लिए निष्पादित होने से पहले दिखाया गया है। करने के लिए एप्पल इंटरफ़ेस के दिशा निर्देशों,

A launch file (or image) provides a simple placeholder image that iOS displays when your app starts up. The placeholder image gives users the impression that your app is fast and responsive because it appears instantly and is quickly replaced by the first screen of your app.

एक संक्रमण प्राप्त करने के लिए अनुसार, LaunchScreen.storyboard से वर्ग को हटा कर उसे 0% लोड हो रहा है संक्रमण के लिए इसी तरह की स्थापना की। अपने Main.storyboard में एक नया नियंत्रक बनाएं और वहां CustomLauchScreenViewController सेट करें और इसे प्रारंभिक दृश्य नियंत्रक के रूप में असाइन करें। अपने ऐप प्रतिनिधि में रूट रूट नियंत्रक के रूप में CustomLauchScreenViewController सेट करें। जब लॉन्च स्क्रीन आपके इस नियंत्रक द्वारा प्रतिस्थापित की जाएगी, तो संक्रमण किसी भी अंतर को महसूस करने के लिए बहुत आसान है। डेटा लोड करने के बाद, आवश्यक रूट व्यू कंट्रोलर को आवश्यक नियंत्रक में बदलें।

+0

मैंने स्टोरीबोर्ड में कस्टमलांचस्क्रीन व्यू कंट्रोलर सेट किया है, और यह त्रुटि का कारण बनता है। यदि आप टेंडर के उत्तर में पढ़ते हैं, तो लॉन्चस्क्रीन का उपयोग डेटा लोड करने के लिए नहीं किया जाता है। यदि डेटा लोड करना संक्रमण के समय से अधिक समय लेता है, तो क्या होगा? – chipbk10

+0

आप लॉन्चस्क्रीन.स्टोरीबोर्ड में कोई भी क्लास सेट नहीं कर सकते हैं। Main.storyboard में प्रारंभिक दृश्य नियंत्रक के रूप में समान नियंत्रक सेट करें। मैंने जवाब अपडेट किया। –

+0

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

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