दिलचस्प पोस्ट
CodeIgniter अस्वीकृत कुंजी वर्ण अच्छा एईएस प्रारंभिक वेक्टर अभ्यास एक क्वेरी के साथ एकाधिक पंक्तियाँ सम्मिलित करें MySQL जावा में स्पष्ट अधिकतम लंबाई के बिना रेगेक्स लुक बैक QDebug, qWarning, qCritical आदि आउटपुट कैसे पुनर्निर्देशित करें? क्यों नहीं मेरे उपवर्ग एक सुपरक्लास के संरक्षित चर का उपयोग कर सकते हैं, जब यह एक अलग पैकेज में है? मैं स्प्लैश स्क्रीन कैसे करूं? जेएसएफ घटक बीन की संपत्ति के बिना बाध्यकारी MySQL में प्रत्येक 'समूह द्वारा' अंतिम 'पंक्ति' लौट रहा है एएसपी.नेट एमवीसी में देखेंबैग कैसे काम करता है MySQL से PHP प्रदर्शन छवि ब्लॉग एच 264 वीडियो स्ट्रीम के आयामों को प्राप्त करना टी-एसक्यूएल: अधिकतम (अन्य स्तंभ) के आधार पर कॉलम का चयन करना एंड्रॉइड में पुनरावृत्त गतिशील जेएसएन स्ट्रिंग के माध्यम से लूप करने में असमर्थ एक्सप्रेस.जेएस सब-ऐप माउंट कैसे करें?

UIScrollView छूता है

इसलिए जब मैं उपयोगकर्ता को UIScrollView को छूता है, तब मैं ध्वनि करना चाहता हूं। UIScrollViewDelegate में scrollViewWillBeginDragging: विधि है, लेकिन यह केवल touchMoved पर कॉल हो जाता है। मैं चाहता हूं कि इसे टच से बुलाया जाए।

कोशिश की गई छूएं: साथ: घटना: लेकिन यह किसी स्पर्श को प्राप्त नहीं करता है। किसी को एक सुराग है?

Solutions Collecting From Web of "UIScrollView छूता है"

मुझे लगता है कि आपको ऐसा करने में सक्षम होने के लिए UIScrollView को उप-वर्ग करना होगा।

छूता हैबैगन: साथइवेंट: केवल यूआईवीयूवी के उप-वर्गों में भेजा जाता है। आप संभवतया छू लागू कर रहे हैं बैगन: साथएवेंट: आपके नियंत्रक में, है ना? यदि हां, तो वहां से काम नहीं करेगा …

वैकल्पिक रूप से, यदि आपने अपने UIScrollView में UIView (जो आपने लिखा है) के एक उपवर्ग को डाल दिया है, तो आप यहां से ट्रिबिंग बैंगन ईवेंट को भी पकड़ सकते हैं (लेकिन केवल तब जब उपयोगकर्ता उस विशेष उपदृश्य को छूता है)। UIScrollView अपने सबव्यूज़ को डिफ़ॉल्ट रूप से छूटेगा (टच देखेंशूल्डबैजिन: साथइवेंट: इनकंटेंटदृश्य: UIScrollView में)।

इसके बजाय एक टैप इशारे पहचानकर्ता का उपयोग करें:

UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(touch)]; [recognizer setNumberOfTapsRequired:1]; [recognizer setNumberOfTouchesRequired:1]; [scrollView addGestureRecognizer:recognizer]; 

या

अपने UIScrollView उप-कक्षा बनाएं और सभी को लागू करें

  -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ // If not dragging, send event to next responder if (!self.dragging){ [self.nextResponder touchesBegan: touches withEvent:event]; } else{ [super touchesEnded: touches withEvent: event]; } } -(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{ // If not dragging, send event to next responder if (!self.dragging){ [self.nextResponder touchesBegan: touches withEvent:event]; } else{ [super touchesEnded: touches withEvent: event]; } } -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{ // If not dragging, send event to next responder if (!self.dragging){ [self.nextResponder touchesBegan: touches withEvent:event]; } else{ [super touchesEnded: touches withEvent: event]; } } 

इसके बजाय एक टैप इशारे पहचानकर्ता का उपयोग करें:

 UITapGestureRecognizer *recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(touch)]; [recognizer setNumberOfTapsRequired:1]; [recognizer setNumberOfTouchesRequired:1]; [scrollView addGestureRecognizer:recognizer]; 

आप अपने नियंत्रक में इन घटनाओं का जवाब भी दे सकते हैं। काम करने के लिए, आपको इस सुविधा को परिभाषित करना होगा (अपने नियंत्रक में):

 - (BOOL)canBecomeFirstResponder { return YES; } 

इसके बाद, 'व्यूडिडएपपर' में, आपको 'बनना चाहिए' पहले से रस्सीपॉन्डर:

 - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; [self becomeFirstResponder]; 

इस मुद्दे पर नए अपडेट (ज़ूमसक्रोल वीव स्रोत कोड के लिंक सहित + UIScrollView आंतरिक पर कुछ उत्कृष्ट स्पष्टीकरण)। इसके अलावा, ऐप्पल के अद्यतित स्क्रॉल विवरस्यूइट उदाहरण को देखें।

आपको स्पर्श जोड़ने चाहिए: बैंगन: साथइवेंट: आपके UIScrollView पर, UIScrollViewDelegate पर नहीं। UIScrollView UIResponder का एक उप वर्ग है, जिसमें टच ईवेंट हैं

रजनीश CustomScrollView जवाब स्विफ्ट 4 में कस्टम CustomScrollView स्टोरीबोर्ड में CustomScrollView पर CustomScrollView

 import Foundation class CustomScrollView: UIScrollView { override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { if !isDragging { next?.touchesBegan(touches, with: event) } else { super.touchesBegan(touches, with: event) } } }