2011-11-21 3 views
0

내 MAIN 활동은 비밀번호 대화 상자 (@android : style/Theme.Dialog)입니다. 인증에 성공하면 응용 프로그램 페이지 (활동)를 실행하고 자체적으로 finish()를 호출합니다. 암호 대화 상자가 독립형으로 실행되고 응용 프로그램 페이지 상단에 떠오르지 않는 것이 중요합니다.내 Android 앱 비밀번호 대화 상자

모든 것이 처음부터 좋습니다. 그러나 사용자가 Home 키를 눌러 앱을 나가고 "바탕 화면"의 앱 아이콘을 클릭하여 다시 돌아 오면 비밀번호 대화 상자가 다시 시작되지 않습니다 (onResume이 호출되기 때문에). 사용자가 응용 프로그램을 종료하기 위해 뒤로 단추를 누른 다음 응용 프로그램을 다시 시작하면 암호 대화 상자가 호출됩니다.

더 많은 것에 대해 생각해 보면, 내 솔루션이 점점 더 우아 해지고 있습니다. 나는 여기에 간단한 해결책이 있기를 바랍니다. 이 글을 쓰면서 암호 대화 상자에서 finish()를 호출하지 않는 옵션을 시도했지만 그 사실은 바뀌지 않았습니다.

+0

로그인 대화 상자가 독립형이고 응용 프로그램 위에 떠 다니지 않는 것이 중요한 이유는 무엇입니까? – Jack

+0

플로팅 비밀번호 대화 상자는 화면의 작은 부분 만 차지하기 때문에 기본 앱 페이지의 일부 입력란이 표시됩니다. – PVS

+0

아, 내가보기에, 흐릿 해지는 것이 충분하지 않습니까? http://www.anddev.org/code-snippets-for-android-f33/blurring-dimming-background-windows-when-dialog-is-displayed-t10447.html – Jack

답변

2

onResume() 메서드 ("home"버튼을 누른 상태에서 다시 시작하면)에서 다시 로그인하라는 메시지가 표시됩니다. 그러한 짧은 답변을 드려 죄송합니다.하지만 가장 합리적인 해결책처럼 들립니다. :)

+0

응답 해 주셔서 감사합니다. onResume에서 로그인/암호 대화 상자를 호출하는 데는 2 가지 문제가 있습니다. - 처음에는 대화 상자가 두 번 표시되어 사용자를 혼란스럽게합니다 (예, 부울을 사용하여이 문제를 피할 수 있음) - 이후 시간에 암호 대화 상자가 응용 프로그램 기본 페이지 위에 나타나고 표시되는 정보 중 일부가 기밀로 표시 될 수 있습니다 – PVS

0

마지막으로 onResume()에서 타이머를 사용하기로 결정했습니다. 마지막으로 암호를 요청한 시간이 30 초가 넘으면 대화 상자가 다시 표시됩니다. 그리고 예, 흐리게 사용하고 있습니다 (Jack에게 감사드립니다!).