मेरे पास लगभग 5-सितारा रेटिंग के साथ ऐप स्टोर में एक ऐप है, लेकिन जब आईओएस 6 बाहर आया, तो ऐप के मुख्य दृश्य पदानुक्रम में कुछ विचार झपकी लगने लगे। यह ऐप पर होता है जो स्टोर में था (जब आईओएस 6 बाहर आया तो मैंने इसे हटा दिया) साथ ही साथ सिम्युलेटर में भी।आईओएस 6 देखें पदानुक्रम दुःस्वप्न
मैंने एक्सकोड में इसे डीबग करने के लिए लगभग 100 घंटे की कोशिश की, लगभग 14 घंटे बिताए हैं, लेकिन इस पर कोई कर्षण नहीं मिल सकता है। सबव्यूव गायब हो जाते हैं और फिर से दिखाई देते हैं जैसे एक gremlin यादृच्छिक रूप से दिखाई देने वाली संपत्ति को बंद कर देता है और उनमें से प्रत्येक के लिए प्रति सेकंड 10 गुना तक, लंबी अवधि के बीच जहां सबकुछ सामान्य होता है।
मुख्य इंटरफ़ेस एक डायल है जिसे उपयोगकर्ता घूम सकता है, जहां मैं इसे घुमाने के लिए परत पर 3 डी ट्रांसफॉर्म का उपयोग करता हूं। मुझे मिला एकमात्र पैटर्न यह है कि 4 गायब उपन्यासों में से 3 एक साथ गायब हो जाते हैं, जैसे कि एक के रूप में बंद कर दिया जाता है, जब डायल कुछ अलग-अलग स्थितियों में घुमाया जाता है।
चौथा गायब सबव्यू एक स्थिर छवि होना चाहिए और यह बिना किसी स्पष्ट पैटर्न के चालू और बंद हो रहा है।
मुझे किसी भी विचार, टिप्स पसंद आएंगे कि मैं इसे कैसे डिबग कर सकता हूं। यह स्मृति चेतावनी नहीं है, और अतिरिक्त [setNeedsToDisplay] निष्पादित करने का कोई प्रभाव नहीं पड़ता है। मुझे लगता है कि ऐप्पल ने आईओएस 6 में कुछ तोड़ दिया है, लेकिन मुझे इन मुद्दों के बारे में कोई और बात नहीं मिल रही है।
- मेरे पदानुक्रम 2 आधार CALayers कि ठीक हैं शामिल हैं:
यहाँ subviews और CALayers की मुख्य दृश्य के पदानुक्रम में खराबी है।
- ऊपर एक बहुत बड़ा कस्टम UIView (drawRect का उपयोग करता है) और बड़े UIImageVIew जो एक साथ बंद हो जाते हैं, हमेशा, जब नीचे कुछ स्थितियों पर घूमता है। केवल नीचे वाला घुमाया जा रहा है।
- ऊपर एक कस्टम टेक्स्ट ड्राइंग UIView है जो झपकी नहीं देता है।
- ऊपर यह एक छोटा लाल पिन ग्राफिक UIImageView है जो पर उपरोक्त 2 दृश्यों के समान सटीक रूप से बंद हो जाता है। यह एक वेनिला UIImageView है; कोई ट्रांसफॉर्म या सबक्लास या कस्टम ड्राइंग कोड नहीं! और अभी तक यह अभी भी एक ही झपकी है।
- ऊपर यह एक अदृश्य UIButton है जो हर समय काम करता प्रतीत होता है।
- कि ऊपर एक UIImageView कि एक छोटे से ग्राफिक कि लगातार और पर बंद ब्लिंक है, अन्य 3 "से जुड़ा हुआ" परतों के रोटेशन के आधार पर निमिष (मैं जुड़ा हुआ कहते हैं, क्योंकि वे एक साथ सभी गायब हो जाते हैं चाहते) से संबंधित नहीं है ।
क्या आपने 'isHidden',' अल्फा 'के सेटर्स ओवरराइड करके ऑर्डर बदलने के लिए कुछ लॉग संदेश जोड़ने का प्रयास किया था? ऐप्पल ने UIKit में कुछ बदलाव किए, यह सच है, लेकिन इसका मतलब यह नहीं है कि आप समस्या के लिए ज़िम्मेदार नहीं हैं। जैसे कि उन्हें 'यूआईटीचएचएच' पर चेतावनी थी कि 'किसी भी यूआईकिट वर्ग के इंस्टेंस वैरिएबल को निजी माना जाना चाहिए ...' और अनुमान लगाएं कि, आईओएस 6 में वर्र्स सार्वजनिक नहीं हैं। –
मैंने आपके द्वारा सुझाए गए सुझावों को सेट किया है और सेटहाइड के लिए ओवरराइड जोड़ा है: और setAlpha: मेरे UIView सबक्लास पर जिनके पास समस्याएं थीं और प्रत्येक पर ब्रेकपॉइंट सेट करें - वे कभी भी हिट नहीं हुए। हालांकि, UIKit परिवर्तनों के बारे में आपका क्या मतलब है, यह सुनिश्चित नहीं है। – avance