// Touch events @Override public boolean onTouch(View v, MotionEvent event) { final int touchDevId = event.getDeviceId(); final int pointerCount = event.getPointerCount(); // touchId, pointerId, action, x, y, pressure int actionPointerIndex = (event.getAction() & MotionEvent.ACTION_POINTER_ID_MASK) >> MotionEvent.ACTION_POINTER_ID_SHIFT; /* API 8: event.getActionIndex(); */ int pointerFingerId = event.getPointerId(actionPointerIndex); int action = (event.getAction() & MotionEvent.ACTION_MASK); /* API 8: event.getActionMasked(); */ float x = event.getX(actionPointerIndex) / mWidth; float y = event.getY(actionPointerIndex) / mHeight; float p = event.getPressure(actionPointerIndex); if (action == MotionEvent.ACTION_MOVE && pointerCount > 1) { // TODO send motion to every pointer if its position has // changed since prev event. for (int i = 0; i < pointerCount; i++) { pointerFingerId = event.getPointerId(i); x = event.getX(i) / mWidth; y = event.getY(i) / mHeight; p = event.getPressure(i); SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); } } else { SDLActivity.onNativeTouch(touchDevId, pointerFingerId, action, x, y, p); } return true; }
@Override public boolean onTouch(View v, MotionEvent event) { builder.setLength(0); switch (event.getAction()) { case MotionEvent.ACTION_DOWN: builder.append("down, "); break; case MotionEvent.ACTION_MOVE: builder.append("move, "); break; case MotionEvent.ACTION_CANCEL: builder.append("cancel, "); break; case MotionEvent.ACTION_UP: builder.append("up, "); break; } builder.append(event.getX()); builder.append(", "); builder.append(event.getY()); String text = builder.toString(); Log.d("TouchTest", text); textView.setText(text); return true; }
public boolean onTouchEvent(MotionEvent event) { super.onTouchEvent(event); if (event.getAction() == MotionEvent.ACTION_DOWN) { Toast.makeText(HandleEvent.this, "Touch Event Received", Toast.LENGTH_SHORT).show(); return true; } return false; }
// 새로운 볼 생성 public boolean onTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) { Ball NewBall = Ball.Create((int) event.getX(), (int) event.getY(), RAD); arBall.add(NewBall); invalidate(); return true; } return false; }
public boolean onTouchEvent(MotionEvent event) { super.onTouchEvent(event); if (event.getAction() == MotionEvent.ACTION_DOWN) { x += 15; y += 15; invalidate(); return true; } return false; }
// Touch events public boolean onTouch(View v, MotionEvent event) { int action = event.getAction(); float x = event.getX(); float y = event.getY(); float p = event.getPressure(); // TODO: Anything else we need to pass? SDLActivity.onNativeTouch(action, x, y, p); return true; }
public void onTouchEvent(MotionEvent event) { if (!this.running) return; boolean result = this.detector.onTouchEvent(event); if (this.mode == MODE_SOLID) event.setAction(MotionEvent.ACTION_CANCEL); else if (this.mode == MODE_DYNAMIC) { if (event.getAction() == ACTION_FAKE) event.setAction(MotionEvent.ACTION_UP); else if (result) event.setAction(MotionEvent.ACTION_CANCEL); else if (this.tapIndicator) { event.setAction(MotionEvent.ACTION_DOWN); this.tapIndicator = false; } } // else just do nothing, it's Transparent }
public boolean onTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) { int sel; sel = FindShapeIdx((int) event.getX(), (int) event.getY()); // 빈 바닥을 찍었으면 무시한다. if (sel == -1) { return true; } // 마지막 추가된 도형을 제대로 찍었으면 다음 단계로 진행. // 빈 화면 잠시 보여준 후 새 도형 추가 if (sel == arShape.size() - 1) { status = BLANK; invalidate(); mHandler.sendEmptyMessageDelayed(0, DELAY); // 엉뚱한 도형을 찍었으면 질문 후 게임 종료 또는 재시작 } else { new AlertDialog.Builder(getContext()) .setMessage("재미있지! 또 할래?") .setTitle("게임 끝") .setPositiveButton( "함더", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { arShape.clear(); status = BLANK; invalidate(); mHandler.sendEmptyMessageDelayed(0, DELAY); } }) .setNegativeButton( "안해", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { mParent.finish(); } }) .show(); } return true; } return false; }