1000sj
SJ CODE
1000sj
전체 방문자
오늘
어제
  • 분류 전체보기
    • 알고리즘
    • 네트워크 보안
      • 네트워크
      • 보안
      • CTF
      • Exploit
    • System Programming
      • Operating System
      • Compiler
      • Device Driver
      • Emulator
    • Application Programming
      • Script
      • Android
    • 클라우드 컴퓨팅
      • Cloud Native
      • Public Cloud
      • Infrastructure
      • Database
      • DevOps
    • 트러블슈팅
    • ETC
      • 문화 생활
      • 커뮤니티

인기 글

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
1000sj

SJ CODE

[Android/Java] Canvas, touch event 처리
Application Programming/Android

[Android/Java] Canvas, touch event 처리

2021. 6. 6. 02:04

Demo

package com.example.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        MyView view = new MyView(this);
        setContentView(view);
    }

    protected class MyView extends View {

        int x = 100, y = 100;
        String str;

        public MyView(Context context) {
            super(context);
            setBackgroundColor(Color.YELLOW);
        }
        @Override
        protected void onDraw(Canvas canvas) {
            Paint paint = new Paint();
            paint.setColor(Color.RED);
            canvas.drawCircle(x, y, 100, paint);
            paint.setTextSize(50);
            canvas.drawText("액션의 종류: " + str, 0, 100, paint);
        }
        @Override
        public boolean onTouchEvent(MotionEvent event) {
            x = (int) event.getX();
            y = (int) event.getY();

            if (event.getAction() == MotionEvent.ACTION_DOWN)
                str = "ACTION_DOWN";
            if (event.getAction() == MotionEvent.ACTION_MOVE)
                str = "ACTION_MOVE";
            if (event.getAction() == MotionEvent.ACTION_UP)
                str = "ACTION_UP";
            invalidate();
            return true;
        }

    }
}

 

'Application Programming > Android' 카테고리의 다른 글

[Android/Java] Sharedpreferences로 임시저장(알림같은 설정값 저장)  (0) 2021.06.12
[Android/Java] Intent  (0) 2021.06.12
[Android/Java] menu  (0) 2021.06.06
[Android/Java] 암시적 Intent 명시적 Intent  (0) 2021.06.05
[01] vscode, android studio에서 환경세팅  (0) 2021.05.25
    'Application Programming/Android' 카테고리의 다른 글
    • [Android/Java] Intent
    • [Android/Java] menu
    • [Android/Java] 암시적 Intent 명시적 Intent
    • [01] vscode, android studio에서 환경세팅
    1000sj
    1000sj

    티스토리툴바