키 입력 이벤트 처리
○ 키 이벤트 처리를 위한 메서드 재정의 / 단축키 Ctrl + O > onKeyDown
boolean onkeyDown (int keyCode, KeyEvent event)
boolean onKey (View v, int keyCode, KeyEvent event)
○ 대표적인 키값
KeyCode | Value |
KEYCODE_DPAD_LEFT | 왼쪽 화살표 |
KEYCODE_DPAD_RIGHT | 오른쪽 화살표 |
KEYCODE_DPAD_UP | 위쪽 화살표 |
KEYCODE_DPAD_DOWN | 아래쪽 화살표 |
KEYCODE_DPAD_CENTER | 중앙 버튼 |
KEYCODE_CALL | 통화 버튼 |
KEYCODE_ENDCALL | 통화 종료 버튼 |
KEYCODE_HOME | 홈 버튼 |
KEYCODE_BACK | 뒤로가기 버튼 |
KEYCODE_VOLUME_UP | 소리 크게 버튼 |
KEYCODE_VOLUME_DOWN | 소리 작게 버튼 |
KEYCODE_0 ~ KEYCODE_9 | 숫자 0~9까지의 키값 |
KEYCODE_A ~ KEYCODE_Z | 알파벳 A~Z까지의 키값 |
○ BACK버튼 두 번 눌러서 앱 종료하기 기능 / code
...
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Toast.makeText(this, "System back 버튼 눌림", Toast.LENGTH_LONG).show();
return true;
}
return false;
}
= if문 안에서 return true를 해서 back버튼이 먹히지 않는다. 따라서 Toast 메시지나 dialog를 넣어서 두 번 back버튼을 눌러서 앱을 종료시키도록 안내할 수 있다.
'프로젝트 기록 > android' 카테고리의 다른 글
[Error] RuntimeException - IllegalAccessException (0) | 2020.06.23 |
---|---|
[android/안드로이드] ListView 리스트뷰 정리 (0) | 2020.02.06 |
[android/안드로이드] Relative Layout/margin이 적용되지 않는다. +오류상황 (0) | 2020.01.17 |
[android/안드로이드] file name 파일이름 (0) | 2020.01.17 |
[android/안드로이드] Fragment, 액티비티에서 프래그먼트로 정보 전달하기 예제 (0) | 2020.01.10 |