내 앱에서 사용자가 클릭하면 텍스트 상자가 클릭되어 화면에 나타납니다. (나는 GONE에서 VISIBILE로 setVisibility를 사용합니다). 내가 가진 문제는 사용자가 장치의 BACK 단추를 누르면 내 응용 프로그램이 닫히는 것입니다.안드로이드 뒤로 버튼
사용자가 내 코드가 호출되기보다는 뒤로 버튼을 누르면 표시 여부를 GONE으로 설정할 수있는 방법이 있습니까?
내 앱에서 사용자가 클릭하면 텍스트 상자가 클릭되어 화면에 나타납니다. (나는 GONE에서 VISIBILE로 setVisibility를 사용합니다). 내가 가진 문제는 사용자가 장치의 BACK 단추를 누르면 내 응용 프로그램이 닫히는 것입니다.안드로이드 뒤로 버튼
사용자가 내 코드가 호출되기보다는 뒤로 버튼을 누르면 표시 여부를 GONE으로 설정할 수있는 방법이 있습니까?
다음 작품 : API 레벨에서 시작
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//Do whatever you want
//AND
//return true to tell the framework you did handle the back key
return true;
}
//This is not the back key, just ask the framework to behave as usual.
return super.onKeyDown(keyCode, event);
}
5 (안드로이드 2.0) 당신은 또한 사용할 수 있습니다
@Override
public void onBackPressed() {
// Do something (or nothing) here
return;
}
완전한 개요 this android developer blog message를 참조하십시오 .
원하는 기능으로 onBackPressed()
을 덮어 씁니다.
기본 구현은 finish()
을 호출하여 현재 활동을 닫습니다. API 레벨 1부터
_ 참고 : _ Android 2.0 이상에서만 사용 가능합니다. (API 레벨 5) –
네, 잊어 버렸습니다. 그래서 너는 나에게서 upvote 하나를 가지고있어. :) –
public boolean onKeyDown(int keyCode, KeyEvent keyEvent) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// Put your code here
}
return true;
}
**주의! ** 여기서 무조건 true를 반환하여 _every_ keypresses를 취소 할 수 있습니다. 'EditText'를 사용하려고하면 나쁘다. :) –
고마워............. 모든 키를 누를 때마다 취소된다. –
수퍼 클래스를 호출 할 때 기본 피니시가 작동하지 않는다. super.onKeyDown (keyCode , 이벤트) 내 코드를 살펴 봅니다. –
@ArpitGarg, 위의'onKeyDown'에서'false'를 반환하면 Activity가'finish() '되지 않습니다. –
고맙습니다. 코드를 사용했는데 정상적으로 작동합니다. – Belgi