안드로이드에서 back버튼에 대한 처리를 해줘야하는 경우가 있습니다.
일반적으로는 back버튼을 누르면 그 activity가 종료되게 되죠.
저는 activity에서 onBackPressed()메서드를 오버라이드해서 사용했었는데요, 이게 2.0버전부터 지원되는 메서드더군요-_-;;;
그래서 1.6이하의 버전에서는 에러가 나고 종료되더라구요.
1.6이하의 버전에서도 back버튼에 대한 처리를 원활히 해주기 위해서는 onBackPressed() 메서드를 오버라이드 하기 보다는, onKeyDown() 메서드를 오버라이드해서 쓰는 것이 좋습니다.
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_BACK) { thread.interrupt(); } return false; }
위와 같은 식으로 오버라이드해서 사용하면 됩니다.
return을 true로 하면 activity가 종료되지 않고,
return을 false로 하면 activity가 종료됩니다.
'프로그래밍 > Android' 카테고리의 다른 글
특정 쓰레드에서 작업을 수행하고 싶을 때? (0) | 2012.01.17 |
---|---|
폰 화면 껐다 켰는데 onDestroy() 호출?? (0) | 2011.03.24 |
안드로이드 앱의 설치 위치 지정해주기 (0) | 2010.12.17 |
안드로이드 앱 등록시 필수 체크!! 안드로이드 마켓 필터링(Android Market Filtering) (0) | 2010.12.07 |
포토샵 모바일(photoshop.com mobile)을 안드로이드 애플리케이션에 통합할 수 있다!!! (0) | 2010.03.06 |