2011-11-23 2 views
1

내 응용 프로그램의 거의 모든 레이아웃에 onKeyDown을 추가하고 있습니다. 사용자 정의 메뉴를 추가하고 있는데 메뉴 키를 사용하여 호출하려고하지만 재미있는 것을 발견했습니다.onKeydown이 세 번째 시도에서 응답하지 않습니다

내 옵션에 대한 생성자에서

내가 onKeyDown의 행동이 시작되도록 setFocusable(true)setFocusableInTouchMode(true)을 설정 레이아웃, 그리고 난 레이아웃을 보여주는있을 때, 나는 내 레이아웃을 전달하고 setContentView로 표시되는에이 기능 updateDisplay(View v) 있습니다.

나는 뒤로 키가 이전보기로 돌아가도록하기 위해 주로이 작업을 수행합니다. 그래서, 그것은 두 번 작동하지만 한 번 작동합니다. 세 번째로 양식을 표시하고 뒤로 키를 누르면 onKeyDown 메서드를 입력하지 않아도 프로그램이 종료됩니다. 어떤 생각 ???? 나는 완전히 여기에서 분실했습니다

+0

디버거에서 앱 실행을 시도 했습니까? 프로그램 종료시 로그에 오류 메시지가 표시됩니까? – ethan

+0

아니요, 오류가 발생하지 않습니다. 단지 onKeyDown을 다시 입력하지 않습니다. 그리고 지금은 옵션 양식 – CJLopez

답변

0

안드로이드에서 옵션 메뉴를 만드는 표준 방법은 ActivityonCreateOptionsMenu 메소드를 덮어 쓰는 것입니다. 이 방법은 모든 레이아웃에 onKeyDown을 구현하는 것보다 효과적입니다.

+0

에 두 번째로 입력 할 때 일어납니다. 각 레이아웃마다 메뉴에 다른 옵션이 있습니다. 액티비티 클래스를 막히고 싶습니다. 각 레이아웃 클래스에 유지하고 싶습니다. 각 레이아웃 클래스는 자체 onKeyDown 메서드를 구현할 것입니다. – CJLopez

관련 문제