日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
暫停和恢復(fù)ActivityAndroid

暫停和恢復(fù)activity(Pausing and Resuming an Activity)

創(chuàng)新互聯(lián)從2013年成立,先為南川等服務(wù)建站,南川等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為南川企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

在正常的應(yīng)用程序使用,前臺(tái)activity有時(shí)會(huì)被其他可視化組件遮擋,從而 造成activity的暫停。例如,當(dāng)一個(gè)半透明的activity打開(kāi)時(shí)(如在一個(gè)風(fēng)格對(duì)話(huà)框),以前的activity就暫停了。只要 activity仍然是部分可見(jiàn),但目前沒(méi)有獲得焦點(diǎn),它就依然處于暫停狀態(tài)。

然而,一旦activity被完全遮擋住,并且對(duì)用戶(hù)不可見(jiàn)了,那么它就停止了 (這是下一課需要討論的內(nèi)容)。

當(dāng)你的activity進(jìn)入暫停狀態(tài),系統(tǒng)將對(duì)你的Activity調(diào)用 onPause()方法。在此方法中,你可以停止那些在暫停狀態(tài)時(shí)不應(yīng)該繼續(xù)進(jìn)行的行為(如視頻播放),或者持久化一些需要***保存的信息,以使得用戶(hù)繼 續(xù)留在你的應(yīng)用程序。如果用戶(hù)返回到你的activity,系統(tǒng)將從暫停狀態(tài)中恢復(fù)它,并調(diào)用onResume()方法。

注意:當(dāng)你的activity接收到一個(gè)對(duì)onPause()的調(diào)用時(shí),它可能 是一個(gè)跡象,表明activity將暫停一會(huì)兒,然后用戶(hù)還會(huì)返回到你的activity。然而,它通常是***個(gè)跡象,表明用戶(hù)正在離開(kāi)你的 activity。

圖 1。當(dāng)一個(gè)半透明的activity掩蓋了你的 activity,系統(tǒng)就會(huì)調(diào)用onPause(),activity等 在暫停狀態(tài)(1)。如果用戶(hù)返回到仍處于暫停狀態(tài)的 activity,系統(tǒng)就會(huì)調(diào)用onResume()(2)。

暫停你的Activity(Pause Your Activity)

當(dāng)系統(tǒng)為你的activity調(diào)用onPause()時(shí),從技術(shù)上講,你的 activity仍然是部分可見(jiàn)的,但最常見(jiàn)的是表明用戶(hù)正在離開(kāi)這個(gè)activity,并且它也將很快進(jìn)入停止(Stopped)狀態(tài)。你應(yīng)該通常使用 onPause()回調(diào):
停止動(dòng)畫(huà)效果或者其他正在進(jìn)行地消耗CPU資源的行為。

提交尚未保存的更改,但前提是用戶(hù)希望這樣處理:當(dāng)他們離開(kāi)時(shí),需要將所做的變動(dòng)做一個(gè)***地保存(如撰寫(xiě)電子郵件)。
釋放一些系統(tǒng)資源,例如廣播接收器,處理傳感器(如GPS),或任何會(huì)影響電池壽命的資源,而與此同時(shí)你的activity又被暫停了,用戶(hù)不再需要這些 資源。

舉個(gè)例子,如果你的應(yīng)用程序使用了照相機(jī),那么onPause()方法就是釋放它的好地方。

 
 
 
 
  1. @Override 
  2. public void onPause() { 
  3.     super.onPause();  // Always call the superclass method first 
  4.  
  5.     // Release the Camera because we don't need it when paused 
  6.     // and other activities might need to use it. 
  7.     if (mCamera != null) { 
  8.         mCamera.release() 
  9.         mCamera = null; 
  10.     } 

一般來(lái)說(shuō),你不應(yīng)該使用onPause()去將用戶(hù)的變更(如個(gè)人信息輸入形 式)保存到持久化的存儲(chǔ)中。只有當(dāng)你確定用戶(hù)期望的是自動(dòng)保存其所做的變更(如起草一個(gè)電子郵件)時(shí),你才可以在onPause()方法中將用戶(hù)的這種變 更寫(xiě)到持久化存儲(chǔ)中。然而,你應(yīng)該避免在onPause()中執(zhí)行CPU高負(fù)荷工作,如讀寫(xiě)數(shù)據(jù)庫(kù),因?yàn)樗鼤?huì)減緩到下一個(gè)activity的過(guò)渡動(dòng)作(你 應(yīng)該在onStop()中執(zhí)行重負(fù)荷關(guān)閉動(dòng)作)。

你應(yīng)該保持業(yè)務(wù)量在onPause()方法相對(duì)簡(jiǎn)單,為了讓一個(gè)快速過(guò)渡到用戶(hù) 的下一個(gè)目的地,如果你的activity實(shí)際上是被停止。

注意:當(dāng)你的activity暫停時(shí),該Activity實(shí)例還駐留在內(nèi)存中, 并且在activity恢復(fù)時(shí)再被重新調(diào)用。你在調(diào)用任何回調(diào)方法轉(zhuǎn)變到恢復(fù)狀態(tài)時(shí),不需要重新初始化那些已經(jīng)創(chuàng)建了的組件,。

恢復(fù)你的Activity(Resume Your Activity)

當(dāng)用戶(hù)從暫停狀態(tài)中恢復(fù)你的activity時(shí),系統(tǒng)就會(huì)調(diào)用 onResume()方法。

要注意的是,每次你的activity進(jìn)入前景時(shí),系統(tǒng)都會(huì)調(diào)用這個(gè)方法,包括 當(dāng)它***次被創(chuàng)建的時(shí)候。因此,你應(yīng)該在實(shí)現(xiàn)onResume()時(shí),初始化那些你在onPause()會(huì)釋放的組件,并且執(zhí)行那些每次activity 進(jìn)入恢復(fù)狀態(tài)時(shí)都必須完成的初始化動(dòng)作(如開(kāi)始動(dòng)畫(huà)和初始化activity獲得用戶(hù)焦點(diǎn)時(shí)需要使用的組件)。

下面的例子onResume()是對(duì)應(yīng)的onPause()上面的例子,所以它 初始化activity暫停時(shí)被釋放的相機(jī)。

 
 
 
 
  1. @Override 
  2. public void onResume() { 
  3.     super.onResume();  // Always call the superclass method first 
  4.  
  5.     // Get the Camera instance as the activity achieves full user focus 
  6.     if (mCamera == null) { 
  7.         initializeCamera(); // Local method to handle camera init 
  8.     } 

本文鏈接:http://www.cnblogs.com/xiaochao1234/archive/2014/08/08/3898559.html


網(wǎng)站題目:暫停和恢復(fù)ActivityAndroid
瀏覽路徑:http://www.dlmjj.cn/article/cciidsc.html