2014-02-17 6 views
0

현재 시작시 간단한 LaunchActivity를 시작하는 응용 프로그램이 있습니다. 이 액티비티에는 onCreate()에 세션 데이터가 있는지 확인하는 조건이 있습니다. 세션 데이터가 없으면 LoginActivity가 시작됩니다. 그렇지 않으면 MainActivity를 시작합니다. 두 경우 모두 두 활동 중 하나를 시작하기 전에 LaunchActivity를 완료합니다.활동을 사용하여 로그인 또는 주요 활동 시작

이 방법을 사용하면 다른 활동이 시작되기 전에 LaunchActivity가 잠깐 깜박입니다. 이것이 적절한 접근법이라면, 깜박임을 없애기 위해 무엇을 할 수 있습니까?

LaunchActivity를 포함하지 않는이 동작에 대한 다른 접근 방법이 있습니까?

+0

다른 접근 방법은 먼저 로그인 활동을 실행하고 세션 데이터가 존재하는지 확인하는 것입니다. 존재하는 경우 LoginActivity를 종료하고 MainActivity를 시작하십시오. 그러나 나는 그것이 깜박 거림에 도움이되는지 모른다. –

답변

3

활동을 시작하기 전에 LaunchActivity가 완료됩니다.

활동을 파괴 한 후 새 활동을 시작한 것 같습니다.

Intent intent = new Intent(this, MainActivity.class);//or LoginActivity.class 
startActivity(intent); 
finish(); 

또한, 당신은 당신이 발사 활동이 돌아 가기 스택에 포함하지 않을 것을 매니페스트에서 지정할 수 있습니다 : 당신이 대신 할 수있는 것은 다음 발사 작업을 완료 Intent를 사용하여 새 Activity을 열 수 있습니다. 이렇게하면 뒤로 버튼을 눌러 메인 또는 로그인 활동을 종료 할 때 시작 활동이 표시되지 않도록 할 것입니다.

android:noHistory="true"