मैं प्रतिक्रियात्मक मूल के साथ एक ऐप विकसित कर रहा हूं जिसे जल्द से जल्द टैप जेस्चर का जवाब देना पड़ता है क्योंकि एक से अधिक टैप ईवेंट को दूसरे में निकाल दिया जा सकता है। डबल टैप या जेस्चर को स्थानांतरित करने की आवश्यकता नहीं है, लेकिन एक साथ नल की देखभाल करने की आवश्यकता है। मैं onTouchStart
और PanResponder | onPanResponderGrant
और देखा कि दोनों के साथ परीक्षण किया गया है:प्रतिक्रिया मूल - ऑन टचस्टार्ट बनाम पैन रेस्पॉन्डर प्रति सेकंड कई छूने के लिए
onTouchStart
दो बार निकाल दिया जाता है जब दो नल एक साथ कर रहे हैं, जबकिonPanResponderGrant
सिर्फ एक बार कहा जाता है।onPanResponderMove
तब भी निकाल दिया गया है जब मेरे पासonMoveShouldSetPanResponder
सेfalse
है, और इसे दो बार निकाल दिया जाता है जब दो नल एक साथ होते हैं, या जब एक सेकंड में कई नलियां होती हैं।- जब एक दूसरे में कई नलियां होती हैं,
onTouchStart
ठीक काम करता है, लेकिनonPanResponderGrant
कम समय निकाल दिया जाता है।
उपर्युक्त कारणों के आधार पर, मुझे लगता है कि मैं onTouchStart
का बेहतर उपयोग करता हूं।
अब सवाल यह है: मैं onTouchStart
का उपयोग करना चाहिए, जब भी React Native docs बहु स्पर्श इशारों के लिए PanResponder
उपयोग करने के लिए सुझाव है?
PanResponder एक संकेत में कई स्पर्शों को दोबारा जोड़ता है। यह सिंगल-टच जेस्चर को अतिरिक्त स्पर्शों के लिए लचीला बनाता है, और इसका उपयोग सरल मल्टी-टच जेस्चर को पहचानने के लिए किया जा सकता है।
या क्या मुझे PanResponder
का कुछ याद आ रहा है?
संपादित करें:
इसके अलावा, gestureState.numberActiveTouches
हमेशा होता है 1, घटना है जब दो नल एक साथ कर रहे हैं। मैंने सोचा कि यह चाल कर सकता है।
क्या यह स्क्रॉल व्यू के लिए है? – sooper
@sooper - नहीं, यह कुछ ड्रम के लिए है। – Manolo
हाय @ मॅनोलो, मेरा जवाब संतोषजनक है? अगर ऐसा है तो कृपया इसे स्वीकार करें, अन्यथा हमें बताएं कि क्या गुम है :)। (संपादित करें: आह मेरे बुरे, बक्षीस मुझे लगता है कि चेक आइकन को बदल रहा है) – Jeremie