מזהה תנועה שעבר אופטימיזציה לזיהוי תנועות מגע עבור לוח המגע.
יש פונקציות האזנה נפרדות (למשל: GestureDetector.BaseListener
, GestureDetector.FingerListener
)
ומאזינים של תנועות מתמשכות (למשל, GestureDetector.ScrollListener
, GestureDetector.OneFingerScrollListener
, GestureDetector.TwoFingerScrollListener
).
למידע נוסף, אפשר לעיין במדריך למפתחים בנושא תנועות מגע.
שימוש כללי
- מטמיעים את כל רכיבי ההאזנה הרצויים ומגדירים אותם ב-
GestureDetector
. - יש לבטל את הקריאות החוזרות לאירועים של קלט, כמו
onGenericMotionEvent(MotionEvent)
אוdispatchGenericFocusedEvent(MotionEvent)
, ולהעביר אתMotionEvent
לשיטהonMotionEvent(MotionEvent)
של מזהה התנועות כדי לעבד את האירוע. - יש לנהל את האירוע בצורה נכונה במאזני תנועות.
הערה: כשמטמיעים את השיטות של
onXXX
למאזינים, יש להגדיר את הערך המוחזר ל-true
רק אם לא רוצים לשלוח אתMotionEvent
לישויות האזנה אחרות בצינור עיבוד הנתונים לקלט.
כיתות מקוננות | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
משופר | trafficDetector.BaseListener | קבלת תוצאות זיהוי. | |||||||||
משופר | תנועהDetector.FingerListener | מאזין זה מדווח כשמספר האצבעות שזוהו משתנה בלוח המגע. | |||||||||
משופר | תנועהDetector.OneFingerScrollListener | המאזינים מקבלים אירועי גלילה אופקית עם אצבע אחת. | |||||||||
משופר | trafficDetector.ScrollListener | ההאזנה הזו מקבלת אירועי גלילה אופקית רציפה, ללא קשר למספר האצבעות. | |||||||||
משופר | תנועהDetector.twoFingerScrollListener | המאזינים האלה מקבלים אירועי גלילה אופקית עם שתי אצבעות. |
בנאים ציבוריים | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
תנועות מזהה(הקשר הקשר)
|
שיטות ציבוריות | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
static בוליאני | |||||||||||
static בוליאני |
isforward(צף דלתא)
|
||||||||||
boolean |
onMotionEvent(אירוע MotionEvent)
|
||||||||||
חיישן תנועות |
set AlwaysConsumeEvent(בוליאני מופעל)
|
||||||||||
חיישן תנועות | |||||||||||
חיישן תנועות | |||||||||||
חיישן תנועות | |||||||||||
חיישן תנועות | |||||||||||
חיישן תנועות |
שיטות שעברו בירושה | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
בנאים ציבוריים
שיטות ציבוריות
public static בוליאני isforward (תנועה בתנועה)
מחזירה true
אם התנועה הנתונה תואמת לתנועה קדימה בלוח המגע.
השיטה הזו הגיונית לביצוע החלקה החלקה, והיא יוצאת מן הכלל רק אם היא מופעלת בתנועות אחרות.
public static boolean isforward (float deltaX)
הפונקציה מחזירה את הפונקציה true
אם המיקום הפיזי של התנועה תואם לתנועה קדימה בלוח המגע.
public ערך בוליאני onMotionEvent (אירוע MotionEvent)
מעבד אירוע תנועה ומחזיר את true
אם צריך לצרוך תמיד אירועים או אם מזוהה תנועה.
החזרות
- מציין אם אירוע מגע נצרך
public trafficDetector setתמידConsumeEvent (בוליאני מופעל)
המדיניות מגדירה אם מזהה התנועות אמור לצרוך אירועים שהועברו אל
onMotionEvent(MotionEvent)
, גם אם הם לא טופלו בפועל.
public TrafficDetector setFingerListener (תנועות האזנה - FingerListener)
מגדיר את ההאזנה באמצעות האצבע.
public trafficDetector setOneFingerScrollListener (תנועהDetector.OneFingerScrollListener האזנה)
מגדיר את ה-listener שמזהה גלילה אופקית ואצבע אחת.
public TrafficDetector setScrollListener (תנועות כמו listeneror.ScrollListener)
מגדיר את ה-listener שמזהה גלילה אופקית ללא קשר למספר האצבעות.
public trafficDetector settwoFingerScrollListener (תנועהDetector.twoFingerScrollListener האזנה)
הגדרת המאזינים שמזהים גלילה אופקית ושתי אצבעות.