2009-12-14 14 views
13

मेरा ऐप क्रैश हो रहा है जब मेरा UITableView एनिमेटिंग के दौरान जारी किया जाता है। ऐप एनीमेशन पूर्ण होने तक समस्या के बिना काम करता है।क्या एनिमेटेड UITableView/UIScrollView setContentOffset को रद्द करने का कोई तरीका है: एनिमेटेड :?

#0 0x31ec3ebc in objc_msgSend 
#1 0x33690248 in -[UIScrollView(UIScrollViewInternal) _scrollViewAnimationEnded] 
#2 0x30defa14 in -[NSObject performSelector:withObject:] 
#3 0x33690098 in -[UIAnimator stopAnimation:] 
#4 0x3368fb7c in -[UIAnimator(Static) _advance:] 
... 

मैं _scrollViewAnimationEnded पर एक दुर्घटना कभी नहीं देखा है और जाहिरा तौर पर न तो Google है: नीचे UIButton जो [tableView setContentOffset:offset animated:YES]; कॉल और फिर backBarButtonItem पर एक बिजली त्वरित नल जो UITableViewController पॉप पर एक नल का परिणाम है। मैंने UITableViewController की - (void)viewWillDisappear:(BOOL)animated विधि से [tableView setContentOffset:offset animated:NO]; पर कॉल करने का प्रयास किया है, लेकिन इसने समस्या को हल नहीं किया है।

एनिमेटिंग के बीच UITableView या UIScrollView को रोकने के लिए कोई विचार?

उत्तर

28

ऐसा लगता है कि यह एक प्रतिनिधि मुद्दा हो सकता है। क्या आपके पास टेबल के लिए एक प्रतिनिधि है, और यदि हां, तो क्या यह तालिका है जब यह तालिका है? इसे जारी करने से पहले अपनी तालिका देखें, प्रतिनिधि का प्रतिनिधि।

[tableView CoreAnimation द्वारा बनाए रखा है, जबकि यह एनिमेट है, ताकि शायद समस्या नहीं है।]

+1

देखें - समस्या तब हुई जब उसके नियंत्रक को देखने से पॉप किया गया था (और यदि नेविगेशन नियंत्रक द्वारा आवश्यक स्मृति से हटाया गया है)। फिर भी, मुझे लगता है कि आपने इसे हल किया है ... जब दृश्य दिखाई देगा/गायब हो जाएगा तब से तालिका दृश्य के प्रतिनिधि को असाइन करने और नील करने के बाद से मैं इस क्रैश को पुन: उत्पन्न करने में सक्षम नहीं हूं। धन्यवाद! –

+3

वैसे, मैंने एआरसी का उपयोग करते समय भी इस दुर्घटना को देखा। टेबल प्रतिनिधियों को मैन्युअल रूप से बाहर निकालना सुनिश्चित करें! – MikecheckDev

1

मुझे लगता है कि आप के साथ समस्या यह है कि आप डेटा स्रोत सरणी जारी कर रहे हैं, इससे पहले कि आप tableView जारी है। मैं स्पष्ट रूप से तालिका को रिहा नहीं कर रहा हूँ इस dealloc में भी बाहर की जाँच

0

अगर आप (मेरे संकेत है, ऐसा कभी नहीं) एक subview के रूप में एक तालिका दृश्य में एक ताज़ा नियंत्रक डाला हो सकता है की कोशिश ...

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