moveTaskToBack Android應用退到後臺,類似按下Home鍵

目前很多應用會有這麼一個需求,在某一個界面當用戶按下返回鍵的時候,類似於按下Home鍵,讓用於退到後臺,而不是殺死當前應用,類似於QQ、微信的做法。要實現這個功能,Google官方給我們提供了方法:

moveTaskToBack(boolean nonRoot)。下面是官方的API,對這個方法的說明:

/**
     * Move the task containing this activity to the back of the activity
     * stack.  The activity's order within the task is unchanged.
     * 
     * @param nonRoot If false then this only works if the activity is the root
     *                of a task; if true it will work for any activity in
     *                a task.
     * 
     * @return If the task was moved (or it was already at the
     *         back) true is returned, else false.
     */

大致的意思就是說:moveTaskToBack調用後,將會把包含該activity的任務移動到activity堆棧中,在堆棧中activity的順序不會發生變化,例如A啓動B,B中調用此方法退到後臺,重新啓動應用會調用B中的onRestart-onStart-onResume方法,不會重新調用onCreate,而且在B中按下back鍵返回的還是A,這就是退到後臺的功能。

如果形參nonRoot是false:當前的activity是task的根,纔會起作用,也就是說不調用這個方法的時候,在點擊返回鍵的時候,就會退出應用。

如果形參nonRoot是true:task中的任何activity都會起作用,也就是說上述限制不起作用。

返回結果:如果該activity已經移動到task中或者該activity已經返回,則會返回true,否則則會返回false。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章