2009-12-28 12 views
28

मैं अपने ज फ़ाइल में UIScrollViewDelegate प्रोटोकॉल को लागू किया है और मैं अपने मीटर वर्ग मेंUIScroll देखें प्रतिनिधि बुला नहीं ScrollViewDidEndScrollingAnimation

- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView 

विधि लागू किया है। जब मेरी तालिका में स्क्रॉलिंग की जाती है तो स्क्रॉलव्यू के अन्य प्रतिनिधि विधि को कॉल किया जा रहा है, लेकिन स्क्रॉलिंग समाप्त होने पर, -scrollViewDidEndScrollingAnimation: कॉल नहीं किया जा रहा है। मैं इसमें थोड़ा फंस गया हूँ।

धन्यवाद और का संबंध

उत्तर

92

-scrollViewDidEndScrollingAnimation: को प्रोग्रामेटिक-जेनरेट स्क्रॉल समाप्त होने पर कॉल किया जाता है।
-scrollViewDidEndDecelerating: को उपयोगकर्ता-स्वाइप स्क्रॉल समाप्त होने पर कॉल किया जाता है।

+2

+1 और दो प्रतिनिधि तरीकों के बीच अंतर को समझाने के लिए धन्यवाद। मुझे लगता है कि यह स्वीकार्य जवाब होना चाहिए! –

+4

और यदि आप स्क्रॉल व्यू को ड्रैग करते समय भी प्रतिक्रिया देना चाहते हैं, लेकिन स्क्रॉल व्यू स्क्रॉलिंग के बिना इसे रिलीज़ करते हैं, तो आपको 'scrollViewDidEndDragging'' विधि भी लागू करना चाहिए, आप बूल पैरामीटर '' willDecelerate'' यह तय करने के लिए कि क्या आपको यहां कोड को या 'scrollViewDidEndDecelerating'' विधि में निष्पादित करना है या नहीं। – TheEye

2

मैं एक ही समस्या थी ... बजाय scrollViewDidEndDecelerating का उपयोग करें।

2

एक ही समस्या थी। मेरे प्रतिनिधि वर्ग में निम्नलिखित का उपयोग किया है:

#pragma mark - 
#pragma mark UIScrollViewDelegate 
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView { 

    NSLog(@"lol"); 
} 

एक आकर्षण की तरह काम करता है!

+0

धन्यवाद बड़ी सहायता। क्या आपने इसके बारे में एक बग रिपोर्ट दायर की है? मैंने अभी रडार सबमिट किया है: // 8810881 http://openradar.appspot.com/8810881। – theory

1

मैं एक ही समस्या थी और इस मुद्दे को मैं प्रतिनिधि कोड शामिल नहीं था:

self.myScrollView.delegate=self; 

आशा इस व्यक्ति के रूप में अच्छी तरह से मदद करता है।

0

स्विफ्ट?

func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) { 

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