ตัวตรวจจับท่าทางสัมผัส

เพิ่มใน API ระดับ XE12 แล้ว

ตัวตรวจจับท่าทางสัมผัสที่ได้รับการเพิ่มประสิทธิภาพเพื่อจดจำท่าทางสัมผัสการแตะสำหรับทัชแพด

มีผู้ฟังด้วยท่าทางสัมผัสที่แยกกัน (เช่น GestureDetector.BaseListener, GestureDetector.FingerListener) และโปรแกรม Listener ท่าทางสัมผัสแบบต่อเนื่อง (เช่น GestureDetector.ScrollListener, GestureDetector.OneFingerScrollListener, GestureDetector.TwoFingerScrollListener)

ดูข้อมูลเพิ่มเติมได้จากคู่มือนักพัฒนาซอฟต์แวร์ท่าทางสัมผัสในการแตะ

การใช้งานทั่วไป

  1. ใช้อินเทอร์เฟซ Listener ที่ต้องการและตั้งค่าเป็น GestureDetector
  2. ลบล้าง Callback ของเหตุการณ์อินพุต เช่น onGenericMotionEvent(MotionEvent) หรือ dispatchGenericFocusedEvent(MotionEvent) และส่ง MotionEvent ไปยังเมธอด onMotionEvent(MotionEvent) ของเครื่องมือตรวจจับท่าทางสัมผัสเพื่อประมวลผลเหตุการณ์
  3. จัดการเหตุการณ์อย่างเหมาะสมใน Listener ตัวตรวจจับท่าทางสัมผัส

    หมายเหตุ: เมื่อใช้เมธอด onXXX สำหรับ Listener ให้ตั้งค่าผลลัพธ์เป็น true เฉพาะในกรณีที่คุณไม่ต้องการส่ง MotionEvent ไปยังเอนทิตีการฟังอื่นๆ ในไปป์ไลน์การจ่ายอินพุต

ชั้นเรียนที่ซ้อนกัน
ที่ปรับปรุงใหม่ GestureDetector.BaseListener รับผลการตรวจจับ
ที่ปรับปรุงใหม่ GestureDetector.FingerListener Listener นี้จะรายงานเมื่อจำนวนนิ้วที่ตรวจพบมีการเปลี่ยนแปลงบนทัชแพด
ที่ปรับปรุงใหม่ GestureDetector.OneFingerScrollListener Listener นี้จะได้รับเหตุการณ์การเลื่อนในแนวนอนโดยใช้นิ้วเดียวอย่างต่อเนื่อง
ที่ปรับปรุงใหม่ GestureDetector.ScrollListener Listener นี้จะได้รับเหตุการณ์การเลื่อนในแนวนอนอย่างต่อเนื่องโดยไม่ขึ้นอยู่กับจำนวนนิ้ว
ที่ปรับปรุงใหม่ GestureDetector.TwoFingerScrollListener Listener นี้จะได้รับเหตุการณ์การเลื่อนในแนวนอนด้วย 2 นิ้วอย่างต่อเนื่อง
ผู้รับเหมาก่อสร้าง
วิธีการสาธารณะ
บูลีนแบบคงที่
isForward(ท่าทางสัมผัสท่าทางสัมผัส)
บูลีนแบบคงที่
isForward(เดลต้าแบบลอย)
boolean
onMotionEvent(เหตุการณ์ MotionEvent)
GestureDetector
setAlwaysConsumeEvents(เปิดใช้บูลีน)
GestureDetector
GestureDetector
GestureDetector
GestureDetector
GestureDetector
เมธอดที่รับมา

ผู้รับเหมาก่อสร้าง

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ GestureDetector (บริบทบริบท)

วิธีการสาธารณะ

เพิ่มใน API ระดับ XE16 แล้ว

สาธารณะ คงที่ บูลีน isForward (ท่าทางสัมผัสท่าทางสัมผัส)

แสดงผล true หากท่าทางสัมผัสที่ระบุสอดคล้องกับการเคลื่อนไหวไปข้างหน้าบนทัชแพด

วิธีนี้เหมาะสำหรับการปัดด้านข้างเท่านั้นและยกเว้นหากเรียกใช้ท่าทางสัมผัสอื่นๆ

เพิ่มใน API ระดับ XE16 แล้ว

สาธารณะ คงที่ บูลีน isForward (Float deltaX)

แสดงผล true หากการกระจัดที่ระบุสอดคล้องกับการเคลื่อนที่ไปข้างหน้าบนทัชแพด

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ บูลีน onMotionEvent (เหตุการณ์ MotionEvent)

ประมวลผลเหตุการณ์การเคลื่อนไหว และแสดงผล true หากควรใช้เหตุการณ์ตลอดเวลาหรือหากตรวจพบท่าทางสัมผัส

การคืนสินค้า
  • จะแสดงว่ามีการใช้งานเหตุการณ์การแตะหรือไม่
เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ GestureDetector setAlwaysConsumeEvents (boolean enabled)

กำหนดว่าตัวตรวจจับท่าทางสัมผัสควรใช้เหตุการณ์ที่ส่งไปยัง onMotionEvent(MotionEvent) หรือไม่ ไม่ว่าจะมีการจัดการจริงหรือไม่ก็ตาม

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ GestureDetector setBaseListener (GestureDetector.BaseListener Listener)

ตั้งค่า Listener ท่าทางสัมผัสพื้นฐาน

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ GestureDetector setFingerListener (GestureDetector.FingerListener Listener)

ตั้งค่า Listener แบบนิ้ว

เพิ่มใน API ระดับ XE21 แล้ว

สาธารณะ GestureDetector setOneFingerScrollListener (GestureDetector.OneFingerScrollListener Listener)

ตั้งค่า Listener ที่ตรวจจับการเลื่อนในแนวนอนและด้วยนิ้วเดียว

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ GestureDetector setScrollListener (GestureDetector.ScrollListener Listener)

ตั้งค่า Listener ที่ตรวจจับการเลื่อนในแนวนอนโดยไม่ขึ้นกับจำนวนนิ้ว

เพิ่มใน API ระดับ XE12 แล้ว

สาธารณะ GestureDetector setTwoFingerScrollListener (GestureDetector.TwoFingerScrollListener Listener)

ตั้งค่า Listener ที่ตรวจจับการเลื่อนในแนวนอนและด้วย 2 นิ้ว