2012-07-10 41 views
3

第一次使用應用程序時,我將向用戶顯示一個登錄屏幕,我將在清單文件中將其定義爲「android.intent.action.MAIN」。成功登錄後,每次應用程序啓動時,我都希望用戶看到主屏幕。請讓我知道我能做到這一點。如何更改android中的啓動活動

也請讓我知道是否有任何方法可以在成功登錄後以編程方式更改MAIN活動,以便我可以重定向到主屏幕。

感謝,

維傑

+1

成功登錄後,你可以存儲你的數據在SharedPreferences,當再次啓動應用程序檢查SharedPreferences。如果有值,則啓動其他活動,否則請登錄setContentView。 – 2012-07-10 11:26:49

+1

我想這個鏈接會幫助你.... [鏈接](http://blog.donnfelker.com/2011/02/17/android-a-simple-eula-for-your-android-apps/)謝謝... – user4232 2012-07-10 11:27:35

+0

@casperOne爲什麼這個問題已經關閉? – 2012-07-10 14:58:11

回答

1

如果您繼承Application類並從您的應用程序的onCreate()中調用所需的活動,該怎麼辦?並在清單中刪除那intent.MAIN

+0

謝謝你。將實施它。 – vijaykumarg 2012-07-10 12:42:27

+0

我已將子應用程序分類並將其添加到清單中的應用程序標記下。建議我刪除了登錄活動的意圖過濾器。現在,Manifest文件不再包含Intent.Main。應用程序已成功安裝,但未顯示在列表中。 – vijaykumarg 2012-07-10 23:42:37

0

我想,從登錄屏幕只需調用主屏幕。或者從主屏幕上,如果登錄詳細信息沒有保存/有效,則顯示登錄屏幕。

基本上,這是沒有必要或一個很好的編程習慣做你在問什麼。

0

當您成功登錄後,請在主要活動中調用finish();將其從堆棧中移除。然後在你的HomeScreenActivity,覆蓋後退按鈕充當home鍵:

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_BACK) { 
     moveTaskToBack(true); 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 
1

我不認爲你可以通過編程設定的主要活動,但你可以在你的sharedPreferences設置一個布爾值。如果此布爾值爲true,則請致電HomeActivity,並完成LoginActivity

希望這有助於