Hi Below is the code to perform swipe over button and click all button as finger moves over
and also user can click multiple button same time
and also user can click multiple button same time
public boolean onTouchEvent(MotionEvent event) {
int buttonIndex = -1;
int pointerIndex,pointerId;
for (int i = 0; i < event.getPointerCount(); i++) {
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
buttonIndex = getButtonByCoords(event.getX(i), event.getY(i));
//Toast.makeText(getContext(), "buttonIndex :"+buttonIndex, Toast.LENGTH_LONG).show();
if (buttonIndex != -1) {
model.pressButton(buttonIndex);
}
return true;
case MotionEvent.ACTION_UP:
buttonIndex = getButtonByCoords(event.getX(i), event.getY(i));
if (buttonIndex != -1) {
model.releaseButton(buttonIndex);
}
model.releaseAllButtons();
return true;
case MotionEvent.ACTION_MOVE:
for(int j = 0; j < event.getPointerCount(); ++j)
{
buttonIndex = getButtonByCoords(event.getX(j), event.getY(j));
//Toast.makeText(getContext(), "buttonIndex :"+buttonIndex, Toast.LENGTH_LONG).show();
if (buttonIndex != -1) {
model.pressButton(buttonIndex);
}
}
return true;
case MotionEvent.ACTION_POINTER_DOWN:
for(int j = 0; j < event.getPointerCount(); ++j)
{
//pointerIndex = j;
//pointerId = event.getPointerId(1);
buttonIndex = getButtonByCoords(event.getX(j), event.getY(j));
if (buttonIndex != -1) {
model.pressButton(buttonIndex);
}
}
return true;
case MotionEvent.ACTION_POINTER_UP:
for(int j = 0; j < event.getPointerCount(); ++j)
{
if (buttonIndex != -1) {
buttonIndex = getButtonByCoords(event.getX(j), event.getY(j));
model.releaseButton(buttonIndex);
}
}
return true;
}
}
return false;
}