Activity (활동) 관련 | mucchin의 Android 전기



Android 애플 리케이션 Back 키 이벤트를 데리러 방법


Android 애플 리케이션에서 Back 버튼 (뒤로 단추)를 눌러 이벤트를 데리러 (받는) 방법은?

본론으로 들어가기 전에, 약간 이야기를 돌리고 버립니다.
꽤 오랜만의 "mucchin의 Android 전기"사이트에서 업데이 트입니다.
약 50 일만 이군요.
업무가 바빠 져서 버렸기 때문에, 개인적으로하고 있던 Android 애플 리케이션 개발적인 작업도 정지했습니다.
겨우 약간의 시간이 비었으므로, 이전부터 만들다 있던 Android 어플 리케이션의 개발의 계속을 보았습니다.
역시 조금이라도 사이가 비야, 약간 공백이 부정할 수 없네요.
Android에 관한 일이라면 몰라도, 자신이 만들고 있던 Android 애플 리케이션 제작 것을 상당히 잊어버리고, 큰일입니다. (쓴웃음)


는 주제에 들어가고 싶다고 생각합니다.
이번에는 Android 애플 리케이션에서 Back 키를 누르면 이벤트를 데리러 방법입니다.

지금은 GPS 기능을 사용하여 Android 애플 리케이션을 만들고있어서, 그것을 XPERIA에 설치하여 테스트를하여 보았습니다.
예를 들어, 실내등으로 GPS 측위를해도 측위 못하고 처리가 끝나지 않습니다.
그 상태로 해당 Activity를 종료 시켜도 XPERIA 화면 상단에 나와있는 측위 중 아이콘과 같은 아이콘이 피코 피코와 움직임 당하게되고있는 것으로 나타났습니다.
그래서 그대로 포지셔닝하고있을뿐, 과연 어떨까라고 생각 했으므로, Activity 종료시 GPS 측위의 취소를하고 싶은데,라고 생각했습니다.

스스로 Android 애플 리케이션에 설치한 "뒤로"버튼은 당연히 밀리면 이벤트를 받아 원하는 처리를 할 수 있습니다. (onClickListener에서)
여기에 GPS 측위의 취소 처리를 넣는 것으로, 자작의 뒤로 버튼 누르기에서 Activity 종료 시에는 문제없이 포지셔닝을 취소하고주었습니다.
하지만 이것만으로는 하드 측의 Back 키를 누를 경우 포지셔닝이 취소되지 않습니다.
은 하드 키로 존재 Back 키를 누를 때 어떻게하면 좋은 지 여부를 설명합니다.

Activity의 onDestroy () 이벤트

Back 키를 누르지되면 무엇을하고 싶은가? 목적에 따라 처리 방법이 다르다고 생각합니다.
나는 같이, Activity 종료 시에는 달리고있는 작업을 취소하고 싶다 든가, 뭔가를 확보하려는 라든가 처리의 경우는 Activity의 onDestroy () 메서드를 구현하여 처리를 기술하는 것이 좋다.
Activity 종료 시에는 onDestroy 이벤트가 발생합니다.
물론, finish () 메소드로 종료시킨 후에도이 onDestroy 이벤트가 발생하기 때문에 자작한 종료 버튼 눌렀을 때 쓰고있는 프로세스 풀어든지 취소 등의 처리를 쓰고있다면, onDestroy () 구현하면 좋다고 생각합니다.




Activity의 onKeyDown () 이벤트

"Back 키를 무시하고 싶다"라고 할 때 어떻게할지에 대해 설명합니다.
그러나, 이런 처리는 사용자에게 불친절하다고 생각하기 때문에별로 권장하지 않습니다.
키 누르기시 onKeyDown 이벤트가 발생하기 때문에 Activity에 onKeyDown () 메서드를 구현합니다.
그리고 예를 들어 다음과 같은 코드합니다.


public boolean onKeyDown (int keyCode, KeyEvent event) {
if (keyCode! = KeyEvent.KEYCODE_BACK) {
return super.onKeyDown (keyCode, event);
} else {
return false;
}
}


KeyEvent.KEYCODE_BACK는 android.view.KeyEvent 클래스의 정수로 Back 키를 나타냅니다.
Back 키를이라면, super 클래스의 onKeyDown ()를 호출하고 없다고하는 것으로, Back 키를 처리는 여기서 종료하는 일이 이전 화면으로 돌아가지 않게됩니다.

만약 이러한 처리를 구현하는 경우, "Back 키 대신 뒤로 버튼을 눌러 종료하십시오."같은 메시지를 표시하는 등, 부디 사용자에게 폐가되지 않도록 해주세요 .


Android 에뮬레이터는 GPS 측위 중 아이콘 같은 아이콘이 표시되지 않았기 때문에 문제 없다고 생각 했습니다만 실제로 XPERIA으로 움직여 보면 졸졸하게 문제가 발견됩니다.

여러분도 Android 애플 리케이션을 개발하는 것이었면 꼭 실기의 입수를 권장합니다.
화면 크기가 다르거나하기 때문에 에뮬레이터에서 달리는 것과 XPERIA로 움직이는 것은, 역시 분위기가 다르군요.

2 3 4 Page 1 of 4 1 2 3 4