2011-01-30 99 views
0

用戶首次加載我的Android應用程序時,我想要設置應用程序的幾個階段。用於設置應用程序的Android對話框設置

基本上我只想要一組對話,從一個步驟到另一個步驟,但我不知道最好的方式去做。

+1

您在您的sharedpreferences的設置。在完成初始化之後,設置該變量。 – Falmarri 2011-01-30 21:20:25

回答

1

我爲我的應用程序實現了類似的解決方案。我在首選項中放置了一個麪包屑,表示這是該應用第一次運行。我有一個顯示給用戶的「主頁」活動。在onCreate中,我通過查看此首選項值來檢查用戶是否已經運行過應用程序。

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    if(this.application.getPreferences().isFirstTimeRun()) 
    { 
     startActivity(new Intent(this, WizardStepOneActivity.class)); 
    } 
    else 
    { 
     startActivity(new Intent(this, MainActivity.class)); 
    } 
} 

如果用戶沒有運行應用程序,我推出了一系列的活動,通過(即精靈般),步行到設定的初始設置。通過使用onActivityResult,我可以瀏覽設置步驟。

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
    super.onActivityResult(requestCode, resultCode, data); 
    switch(requestCode) 
    { 
    case WIZARD_STEP_1: 
     Intent i = new Intent(this, WizardStepTwoActivity.class); 
     startActivityForResult(i, WIZARD_STEP_2); 
     break; 
    case WIZARD_STEP_2: 
     Intent i = new Intent(this, WizardStepThreeActivity.class); 
     startActivityForResult(i, WIZARD_STEP_3); 
     break; 
    case WIZARD_STEP_3: 
     //Set the breadcrumb to indicate that the user has set their preferences 
     this.application.setFirstTimeRunCompleted(); 

     //Start main activity 
     startActivity(new Intent(this, MainActivity.class)); 
     break; 

    } 

}

我不知道這是否是最好的辦法還是沒有,但它似乎工作至今。顯然,錯誤處理應該到位,以確保他們已經設置了偏好,所以可以設置麪包屑。

希望這有助於 凱文

+0

非常感謝,迄今爲止工作很好! – 2011-02-02 16:40:46