티스토리 뷰
반응형

이렇게 요청이 왔다 ㅎㅎ
( 자체개발앱이라서 애정이 있는 앱입니다 )
하,.. 고마우면서도 귀찮음이 동시에 몰려옴 ㅋㅋㅋ
가끔씩 요청사항이 오는 앱이긴 한데..
이번에 좀 색다로운 요청이라 포스팅 해봅니다~
핵심은 단축키 넣어달라인데 흠....
100% 이해가 되는 앱이긴 합니다
글자를 많이 적다보니 터치로만 하기에는 힘들긴 하죠..
그래서 구글링 해보니 있긴 있습니다~~~
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_UP && event.isShiftPressed()) {
if (event.getKeyCode() == 22) { //->
but_next.performClick();
} else if (event.getKeyCode() == 21) { //<-
but_prev.performClick();
} else if (event.getKeyCode() == 30) { //b
et_content.clearFocus();
} else if (event.getKeyCode() == 20) { //아래쪽 화살표
et_content.clearFocus();
this.hideKeypad();
} else if (event.getKeyCode() == 33) { //e
this.contentClear();
} else if (event.getKeyCode() == 29) { //a
this.hideKeypad();
but_showAnswer.performClick();
} else if (event.getKeyCode() == 34) { //f
et_content.requestFocus();
}
}
return super.dispatchKeyEvent(event);
}
onKeyUp & onKeyDown 등 api 함수들이 있는데
제일 먼저 검색된게 디스패치키이벤트 함수가 나왔네요
여튼 테스트 해보니 잘됩니다.
문제는 단축키라서 ctrl 또는 alt 키로 만드는데
이상하게 컨트롤, 알트키가 안먹힙니다???
이유는 모르기에 넘어가고 shift키는 먹힙니다;;
참고로 edittext에 포커스 잡힌상태에서는 단축키가 잘 안먹힙니다;;
edittext만 없으면 단축키 잘먹힙니다.
또. 키패드가 영문일땐 잘먹히는데 한글일땐 잘 안됩니다 ㅅㅂ........
또. 에뮬레이터에선 한/영 둘다 잘되는데 실제 디바이스에선 (한글에선) 잘 안됩니다 ㅋㅋㅋㅋㅋㅋ
추가로
AlertDialog ad = builder.create();
ad.setOnKeyListener((dialog, keyCode, event) -> {
if (event.getKeyCode() == 33) { //e
ad.dismiss();
}
return false;
});
dialog에도 단축키 먹히려면 이렇게 하심 되요.
블루투스 키보드 없으신 분은 스마트폰에 유선 키보드 연결하셔서 테스트 하시면 됩니다.
반응형
'개발일지 (욕 + 반말 포함)' 카테고리의 다른 글
| 0x80090011 자격 증명을 검증할 수 없습니다 해결방법!! (0) | 2022.09.28 |
|---|---|
| npm nodemailer google example (구글계정으로 메일 보내기) (0) | 2022.06.26 |
| nodejs, angular 파일 다운로드 진행률 구현하기 (0) | 2021.11.19 |
| 성능 좋은 전자파 차단기 (미친거 아닌가?) (2) | 2021.10.13 |
| 개발자의 의도를 무시 (0) | 2021.10.05 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 삼천포
- 강원도
- 삼천포대교
- 인스타
- 뷰맛집
- 하동호
- 영월
- 밀양
- 진주야경
- 호미곶
- 2470gm
- 포항
- 둘레길
- 진주
- 지리산둘레길
- 거제
- 70200gm
- 남해
- 50gm
- 달
- 강진가볼만한곳
- 지리산
- 하동
- 사진맛집
- 순천
- SEL24F28G
- 일출
- 망진산
- 카페
- 스탬프위치
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
글 보관함