2014-08-29 12 views
0

내 앱에 일회 EULA 및 비밀번호 생성 화면을 구현하려고합니다.EULA를 구현할 때 하나의 활동 만 실행 한 것처럼 보이게하십시오.

나는 가능한 한 깨끗하고 매끈 매끈하게하기 위해 투쟁합니다. 나의 현재 implmentation은 SharedPreference를 필요로한다. 그렇지 않으면 EULA와 패스워드 생성 화면을 보여줘야한다.

/** 
* 
* @param context 
* @return 
*/ 
public static boolean isFirstLaunch(Context context) { 
    SharedPreferences reader = context.getSharedPreferences(
      PREFERENCES, Context.MODE_PRIVATE); 
    String apiKey = reader.getString(APIKEY, ""); 

    return apiKey == ""; 
} 

사용자가 EULA 수락을 완료하고 암호를 만들면 API 키가 설정됩니다. 그러나 이전 활동이 여전히 시작/애니메이션으로 표시됩니다. 그래서 저는 첫 번째 활동에서 애니메이션을 제거하려고 노력했지만 아직까지는 행운이 없습니다. 활동에

:

@Override 
protected void onCreate(Bundle arg0) { 
    super.onCreate(arg0); 

    if (InitialLoading.isFirstLaunch(this)) { 
     Intent intent = new Intent(this, EndUserAgreementActivity.class); 
     intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); 
     startActivity(intent); 
     //getWindow().setWindowAnimations(0); 
     overridePendingTransition(0,0); 
     finish(); 

     return; 
    } 

    if (InitialLoading.isPasswordLoginEnabled(this)) { 



    } 

    Intent intent = new Intent(this, OverviewActivity.class); 
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_HISTORY|Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NO_ANIMATION); 
    startActivity(intent); 
    finish(); 
} 

너희들이 하나의 활동이 출시 된 경우로 나는 그것을 볼 수있는 방법을 알고 계십니까 모든 시나리오의 :

  • (표시 안 함) 유치 활동 -> EULA -> 비밀번호 생성 -> 시작/기타 활동
  • (표시하지 않음) 유치 활동 -> 인증 화면 -> 시작/기타 활동
  • lauched 활동

EULA를 시작하려고 할 때 이전의 활동이 계속 깜박입니다. Whatsapp을 확인했고 그 앱이 EULA가 아닌 활동을 시작할 때 깜박임을 보여 주므로 이것이 가능한지 궁금합니다.

이미 인증 옵션을 사용하도록 설정 한 경우 시작될 비밀번호 화면을 사용 중지하는 설정 화면이 있으므로 걱정할 필요가 없습니다.

어쨌든 도움 주셔서 감사합니다.

+0

EULA'Activity'를 MAIN/LAUNCHER'Activity'로 설정하고 사용자가 EULA를 수락했는지 확인하고'onCreate' 메소드에서 비밀번호를 생성했는지 확인하십시오. 그들이 'Activity'를 시작하고 EULA의 'Activity'를 즉시 마칩니다. – Squonk

답변

1

당신이 볼 수있는 것은 Fragments의 개념입니다. 아이디어는 활동의 UI를 런타임에 상호 교환 할 수있는 재사용 가능한 Fragment로 분할하는 것입니다.

따라서 onCreate 방법에서 EULA 화면이 필요한지 확인한 다음 해당 EULA 부분을 부 풀거나 다른 경우에는 암호를 표시 할 수 있습니다. 이렇게하면 활성 활동을 다시 사용하기 위해 새 활동을 시작하지 않아 깜박임을 줄여야합니다.

+0

멍청한 소리가 들리 겠지만, 나는 조각에 대해 완전히 잊었다. Thx 내 문제에 대한 해결책을 찾았습니다. – Orion