moveTaskToback退背景用法及作用,movetasktoback後台

來源:互聯網
上載者:User

moveTaskToback退背景用法及作用,movetasktoback後台

1

方法:public boolean moveTaskToBack(boolean nonRoot)

activity裡有這個方法,參數說明如下:

nonRoot=false→ 僅當activity為task根(即首個activity例如啟動activity之類的)時才生效

nonRoot=true→ 忽略上面的限制

這個方法不會改變task中的activity中的順序,效果基本等同於home鍵

應用情境:

比如有些activity諸如引導圖之類的,使用者在按返回鍵的時候你並不希望退出(預設就finish了),而是只希望置後台,就可以調這個方法

 

2

moveTaskToBack()方法:在activity中調用 moveTaskToBack (boolean
nonRoot)方法即可將activity 退到後台,注意不是finish()退出。

參數說明:

參數為false——代表只有當前activity是task根,指應用啟動的第一個activity時,才有效;

參數為true——則忽略這個限制,任何activity都可以有效。

說明:判斷Activity是否是task根,Activity本身給出了相關方法:isTaskRoot()

 

moveTaskToBack調用後,task中activity的順序不會發生變化,例如A啟動B,B中調用此方法退到後台,重新啟動應用會調用B中的onRestart-onStart-onResume方法,不會重新調用onCreate,而且在B中按下back鍵返回的還是A,這就是退到背景功能。

 

3

@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {    if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {        moveTaskToBack(true);        return true;    }    return super.onKeyDown(keyCode, event);}

  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.