2011-05-05 21 views
6

मैं सफलतापूर्वक निम्नलिखित कोड का उपयोग कर दो उंगलियों के निर्देशांक स्क्रीन पर स्पर्श किया जा रहा रिकॉर्ड करने में सक्षम हूँ:एंड्रॉयड 3 उंगली स्पर्श का पता लगाने

case MotionEvent.ACTION_MOVE: 
Log.d("TOUCH", "test ACTION MOVE" + event.getPointerCount()); 
Log.d("TOUCH", "test ACTION MOVE ID" + event.getPointerId(0) + " "+event.getPointerId(1)); 
if(event.getPointerCount()==3) 
{ 

x0 = (int) event.getX(event.getPointerId(0)); 
y0 = (int) event.getY(event.getPointerId(0)); 
x1 = (int) event.getX(event.getPointerId(1)); 
y1 = (int) event.getY(event.getPointerId(1)); 
x2 = (int) event.getX(event.getPointerId(2)); 
y2 = (int) event.getY(event.getPointerId(2)); 

Log.d("TOUCH", "test ACTION DOWN " + " values = " + x0 + " " + y0 + " " 
+ x1 + " " + y1+ " "+x2 + " " + y2); 
} 

लेकिन इसके बाद के संस्करण कोड im में अधिक तो 2 पता लगाने में सक्षम नहीं एक उदाहरण पर स्पर्श बिंदु। यहां तक ​​कि पॉइंटरकाउंट() कभी भी ऊपर नहीं जाता है 2.

मैं 2 अंगुलियों के लिए स्पर्श निर्देशांक कैसे प्राप्त कर सकता हूं? मैं एंड्रॉइड 2.2

+0

हाय, मैं यकीन नहीं है कि इस मदद आप लेकिन http://getandroidstuff.com/familiar-android-platform-android-3rd-edition-download- पुस्तक/पृष्ठ 220, अध्याय मल्टी-टच। – Pasha

उत्तर

2

पर यह कोड चला रहा हूं, यह कुछ समय पहले पूछा गया था, लेकिन वैसे भी। जवाब यह है कि हालांकि एंड्रॉइड 256 उंगलियों को ट्रैक कर सकता है, वर्तमान कार्यान्वयन इसे 2 अंगुलियों तक सीमित करता है।

मुझे हनीकॉम के बारे में निश्चित नहीं है, लेकिन मुझे लगता है कि इसका एक ही "मुद्दा" है।

+0

वैसे यह बेकार है !!! :( अगर हम वास्तव में –

+0

का उपयोग नहीं कर सकते हैं तो समर्थन करने का बिंदु क्या मैं सहमत हूं, यह काफी खराब है क्योंकि प्रतिस्पर्धा बहुत अच्छी तरह से 3 उंगली संकेतों का समर्थन करती है। समर्थन कुछ समय पर किया जाता है जब ओएमए (ओपन मोबाइल एलायंस) रोल कर सकता है पिछली संगतता को तोड़ने के बिना 2 से अधिक उंगली के लिए समर्थन। – Augusto

+0

मैं समझता हूं कि यह एंड्रॉइड इंजीनियरिंग टीम के लिए एक पुनर्विक्रय हो सकता है लेकिन अब हमारे पास क्यों नहीं है? कौन जानता है कि ओएमए समर्थन के साथ कब आएगा ??? !!! –

1

मैंने कुछ एंड्रॉइड 2.3.5 उपकरणों पर 4 स्पर्शों की पुष्टि की है, और प्रत्येक 3.x और 4.x डिवाइस मैंने अभी तक परीक्षण किया है। ऐसा लगता है कि कम से कम एपीआई 8+ से, दो से अधिक स्पर्श समर्थित हैं, लेकिन यह डिवाइस-निर्भर है।

0

मल्टीटाउच जो दो से अधिक अंगुलियों का उपयोग करता है केवल एंड्रॉइड 4.1.2 संस्करण या उससे ऊपर में किया जा सकता है और विभिन्न कंपनियों ने एंड्रॉइड संस्करणों को उनकी जरूरतों और ऐप्स के अनुसार अनुकूलित किया है अर्थात 4.1.2 संस्करण में क्यूमोबाइल सिर्फ पांच छूतों का समर्थन करता है लेकिन महान सैमसंग कंपनी का उपयोग करता है और अधिक से अधिक 11 उंगलियों

0
 firstFingerX = MotionEventCompat.getX(ev, 0); firstFingerY = MotionEventCompat.getY(ev, 0); 
if (numberOfFingers == 2) { 
    Log.e("mine", "Integer: " + String.valueOf((int)MotionEventCompat.getY(ev, 1))); 
    secondFingerX = MotionEventCompat.getX(ev, 1); secondFingerY = MotionEventCompat.getY(ev, 1); 
} 
if (numberOfFingers == 3) { 
    Log.e("mine", "Integer: " + String.valueOf((int)MotionEventCompat.getY(ev, 2))); 
    thirdFingerX = MotionEventCompat.getX(ev, 2); thirdFingerY = MotionEventCompat.getY(ev, 2); 

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