我需要有两种不同的行为,一种是针对D-pad,另一种是针对模拟摇杆(在同一个游戏手柄上)。
问题在于,在onGenericMotionEvent回调中,两者在MotionEvent上具有相同的信息,我无法区分它们。
问题在于,在onGenericMotionEvent回调中,两者在MotionEvent上具有相同的信息,我无法区分它们。
// d-pad
MotionEvent { action=ACTION_MOVE, id[0]=0, x[0]=-1.5259255E-5, y[0]=-1.5259255E-5, toolType[0]=TOOL_TYPE_UNKNOWN, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=151637936, downTime=0, deviceId=5, source=0x1000010 }
// analog joystick
MotionEvent { action=ACTION_MOVE, id[0]=0, x[0]=0.64507514, y[0]=0.710811, toolType[0]=TOOL_TYPE_UNKNOWN, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=151650802, downTime=0, deviceId=5, source=0x1000010 }
能否识别正在使用的输入方式?如何实现?