टैब बार आधारित एप्लिकेशन में, यदि मेरे पास एक टैब से नेविगेशन स्टैक में एक नियंत्रक धक्का दिया गया है और फिर, जब कोई अन्य टैब सक्रिय होता है, तो मैं उस नियंत्रक को पॉप करने का प्रयास करता हूं, जब तक कि मैं इसे बिना एनीमेशन के पॉप करता हूं ।UIKit नियंत्रक को रिलीज़ नहीं करता है अगर इसे एनीमेशन के साथ हटाया नहीं जाता है?
यह काम करता है:
[navigationController popToRootViewControllerAnimated:NO];
और यह नहीं करता है:
[navigationController popToRootViewControllerAnimated:YES];
किसी को भी यहाँ क्या हो रहा है की किसी भी विचार है? animated
पैरामीटर अनुचित तरीके से उपयोग किया जा रहा है?
अद्यतन:
एप्पल मुझे बताया कि यह वास्तव में UIKit में एक बग है, और वे इसे करने के लिए के रूप में तत्काल और सौंपा किसी रूप में चिह्नित। इसे नवीनतम रिलीज में हल किया गया हो सकता है लेकिन मेरे पास जांच करने का समय नहीं था।
UIKit में एक बग की तरह लगता है। यदि आप इसे एक साधारण परियोजना के साथ पुष्टि कर सकते हैं, तो इसे ऐप्पल को सबमिट करें। –
मैंने अभी पुष्टि करने के लिए एक नमूना प्रोजेक्ट बनाया है, और मैं इसे कर सकता हूं। निस्संदेह यह कुछ ऐसा नहीं है जो * प्रत्येक * UINavigationController के उपयोग के साथ हो रहा है। ऐसा होता है यदि आपके पास एक टैब के अंदर एक नेविगेशन नियंत्रक के साथ UITabBarController है, और दूसरे टैब से आप नेविगेशन नियंत्रक पॉप करते हैं। मैंने जो देखा वह यह है कि, यदि आपके पास स्टैक में 1 से अधिक व्यू कंट्रोलर हैं, तो वे सभी को अंतिम को छोड़कर रिहा कर दिया जाता है, जो तब तक बनाए रखा जाता है जब तक कि आप अन्य टैब (नेविगेशन नियंत्रक वाला एक) का चयन न करें। – eugeniodepalo
यदि "अंतिम" नियंत्रक द्वारा आप रूट नियंत्रक का मतलब रखते हैं, तो यह प्रासंगिक है: "यदि स्टैक के शीर्ष पर दृश्य नियंत्रक मूल दृश्य नियंत्रक है, तो यह विधि कुछ भी नहीं करती है ... आप अंतिम आइटम को पॉप नहीं कर सकते ढेर।" ('PopViewControllerAnimated:' के लिए प्रलेखन से।) यूआईकिट ऑब्जेक्ट जारी करते समय आपको शायद ही कभी चिंता करने की ज़रूरत है। बस सुनिश्चित करें कि आप मेमोरी प्रबंधन का अपना हिस्सा करते हैं। कौन जानता है, हो सकता है कि ढांचे को बाद में रीसायकल करने के लिए किसी ऑब्जेक्ट पर हो? या शायद नहीं। मुद्दा यह है कि आप उन पर भरोसा कर सकते हैं कि वे अच्छी तरह से परीक्षण करें। – Felixyz