2014-06-22 73 views
0

我的應用程序有2個活動。第一個是登錄,第二個是在第一個登錄成功時啓動的。由於第二項活動必須將所有Facebook上的朋友都保存在數據庫中,並在某些列表視圖中將它們按特定順序排列,因此我從第一個活動傳遞到第二個活動。我該怎麼辦?在他們之間放置Spalsh屏幕是否正確?如果是這樣,當完成第二個活動的創建時,如何停止SplashScreen? 非常感謝你開啓屏幕onCreate結束

+0

可能是這樣 - 渲染啓動畫面。裏面調用一個異步任務。任務完成後返回並調用另一個活動。 –

回答

0

沒有使用啓動畫面,這不是一個好主意。更好的方法是擁有AsyncTask。在onPreExecute()方法中啓動一個進度條,在doInBackground()方法和onPostExecute()方法內部執行所有耗費時間的代碼,只需關閉進度條並通過Intent開始第二個活動即可。

new AsyncTask<Void, Void, Void>() { 

    @Override 
    protected void onPreExecute() { 
    // Start your progress bar here 
    }; 

    @Override 
    protected Void doInBackground(Void... params) { 
    // Do all the time consuming code here 
    return null; 
    } 

    @Override 
    protected void onPostExecute(Void result) { 
    super.onPostExecute(result); 
    // Dismiss your progress bar here 
    // Start your Second activity 
    } 

}.execute(); 
+0

在odInBackground裏面我應該把填充數據庫的代碼放在第二個活動中嗎? @AndroidWarrior – JackLametta

+0

@JackLametta是的,你把所有的數據庫代碼放在'doInBackground()'裏面,它會顯示一個'ProgressBar'直到'doInBackground()'執行完成。 – CodeWarrior