मेरे पास क्षैतिज रूप से एकाधिक relativelayout विचारों के साथ एक स्क्रॉलव्यू है ... डेटाबेस में प्रत्येक रिकॉर्ड के लिए ... जो प्रोग्रामेटिक रूप से बनाए जाते हैं।निर्धारित करें कि एकाधिक दृश्यों में कौन से दृश्य में इशारा है (डबल क्लिक करें, बाएं स्वाइप करें, दाएं स्वाइप करें, आदि)?
मुझे यह निर्धारित करने की आवश्यकता है कि कुछ संकेतों से कौन सा दृश्य प्रभावित होता है ... क्लिक करें, डबलक्लिक करें, और बाएं/दाएं स्वाइप करें।
RelativeLayout rlView = new RelativeLayout(this);
rlView.setId(10000+myrecordid);
rlView.setOnClickListener(myviewclick);
और myviewclick:
बेशक क्लिक मैं साथ प्राप्त करने में सक्षम था
:private View.OnClickListener myviewclick = new View.OnClickListener() {
public void onClick(View v) {
Integer i=v.getId()-10000;
// Do some processing on this view
}
};
मैं ऑनलाइन क्या मिला से, मैं इशारा इस तरह से प्राप्त करने की कोशिश
rlView.setOnTouchListener(myviewtouch);
इस कोड के साथ:
private View.OnTouchListener myviewtouch = new View.OnTouchListener(){
public boolean onTouch(View v, MotionEvent event) {
return gestureDetector.onTouchEvent(event);
}
GestureDetector gestureDetector = new GestureDetector(new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onDoubleTap(MotionEvent e) {
Log.i("MYLOG","double tap");
return true;
}
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
Log.i("MYLOG","SingleTapConfirmed");
return true;
}
@Override
public void onLongPress(MotionEvent e) {
Log.i("MYLOG","LongPress");
}
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
if (e1.getX()<e2.getX())
Log.i("MYLOG","Fling Right");
else
Log.i("MYLOG","Fling Left");
return true;
}
});
};
MYLOG के मुताबिक, मुझे जरूरी उचित इशारा मिल रहा है। समस्या यह है कि, मुझे नहीं पता कि इशारा आईडी आईडी कैसे प्राप्त करें। मुझे पता है कि यह onTouch
में है, लेकिन इसे गति निर्धारित करने के लिए gestureDetector.OnTouchEvent
कहा जाता है ... और मैं इस बिंदु पर खो गया हूं।
मैंने सभी स्टैक ओवरफ्लो और कई साइटों के लिए कई घंटों की खोज की ... वे सभी इशारा कैसे निर्धारित करें इस पर भिन्नता दिखाते हैं ... लेकिन कई विचारों के साथ उपयोग करने में मुझे परेशानी हो रही है।
किसी भी मदद की सराहना की जाएगी।
मैं संदर्भ के बारे में बताता हूं कि मैं [इस प्रश्न] में बक्षीस क्यों जोड़ रहा हूं (https://stackoverflow.com/questions/45070129/detecting-common-gestures-on-multiple-views-in-android)। – Suragch