成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

暫停和恢復Activity Android

移動開發 Android
在正常的應用程序使用,前臺activity有時會被其他可視化組件遮擋,從而 造成activity的暫停。例如,當一個半透明的activity打開時(如在一個風格對話框),以前的activity就暫停了。只要 activity仍然是部分可見,但目前沒有獲得焦點,它就依然處于暫停狀態。

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

在正常的應用程序使用,前臺activity有時會被其他可視化組件遮擋,從而 造成activity的暫停。例如,當一個半透明的activity打開時(如在一個風格對話框),以前的activity就暫停了。只要 activity仍然是部分可見,但目前沒有獲得焦點,它就依然處于暫停狀態。

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

當你的activity進入暫停狀態,系統將對你的Activity調用 onPause()方法。在此方法中,你可以停止那些在暫停狀態時不應該繼續進行的行為(如視頻播放),或者持久化一些需要***保存的信息,以使得用戶繼 續留在你的應用程序。如果用戶返回到你的activity,系統將從暫停狀態中恢復它,并調用onResume()方法。

注意:當你的activity接收到一個對onPause()的調用時,它可能 是一個跡象,表明activity將暫停一會兒,然后用戶還會返回到你的activity。然而,它通常是***個跡象,表明用戶正在離開你的 activity。

圖 1。當一個半透明的activity掩蓋了你的 activity,系統就會調用onPause(),activity等 在暫停狀態(1)。如果用戶返回到仍處于暫停狀態的 activity,系統就會調用onResume()(2)。

暫停你的Activity(Pause Your Activity)

當系統為你的activity調用onPause()時,從技術上講,你的 activity仍然是部分可見的,但最常見的是表明用戶正在離開這個activity,并且它也將很快進入停止(Stopped)狀態。你應該通常使用 onPause()回調:
停止動畫效果或者其他正在進行地消耗CPU資源的行為。

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

舉個例子,如果你的應用程序使用了照相機,那么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.     } 

一般來說,你不應該使用onPause()去將用戶的變更(如個人信息輸入形 式)保存到持久化的存儲中。只有當你確定用戶期望的是自動保存其所做的變更(如起草一個電子郵件)時,你才可以在onPause()方法中將用戶的這種變 更寫到持久化存儲中。然而,你應該避免在onPause()中執行CPU高負荷工作,如讀寫數據庫,因為它會減緩到下一個activity的過渡動作(你 應該在onStop()中執行重負荷關閉動作)。

你應該保持業務量在onPause()方法相對簡單,為了讓一個快速過渡到用戶 的下一個目的地,如果你的activity實際上是被停止。

注意:當你的activity暫停時,該Activity實例還駐留在內存中, 并且在activity恢復時再被重新調用。你在調用任何回調方法轉變到恢復狀態時,不需要重新初始化那些已經創建了的組件,。

恢復你的Activity(Resume Your Activity)

當用戶從暫停狀態中恢復你的activity時,系統就會調用 onResume()方法。

要注意的是,每次你的activity進入前景時,系統都會調用這個方法,包括 當它***次被創建的時候。因此,你應該在實現onResume()時,初始化那些你在onPause()會釋放的組件,并且執行那些每次activity 進入恢復狀態時都必須完成的初始化動作(如開始動畫和初始化activity獲得用戶焦點時需要使用的組件)。

下面的例子onResume()是對應的onPause()上面的例子,所以它 初始化activity暫停時被釋放的相機。

  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

責任編輯:chenqingxiang 來源: cnblogs
相關推薦

2021-11-16 19:37:03

緩存

2014-08-21 11:07:40

AndroidActivity銷毀

2011-05-30 14:00:35

Android Activity Intent

2021-03-01 11:38:15

網絡安全進程代碼

2023-11-15 15:35:27

2015-10-20 15:54:16

android源碼滑動關閉

2012-02-17 17:07:30

Android安全Activity劫持

2013-01-08 13:33:07

Android開發Activity入門指南

2011-06-02 11:13:10

Android Activity

2011-04-12 17:16:52

Activity跳轉開發實例Android學習筆記

2010-02-06 10:14:36

Android Act

2021-08-11 17:15:17

AndroidActivity場景

2011-03-30 14:21:23

2015-11-09 14:46:49

Android安全

2010-01-25 17:21:34

Android Act

2014-05-27 15:36:01

AndroidActivity啟動模式

2013-02-01 13:47:47

Android開發Activity

2015-10-21 14:07:17

Oracle備份Oracle恢復

2021-07-27 12:19:42

微信用戶注冊騰訊

2011-05-26 15:22:57

Android Activity
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: h视频在线免费 | 欧美日韩国产在线观看 | 成人h动漫亚洲一区二区 | 日日日视频 | 国产精品视频一二三区 | 一级黄a视频 | 欧美日韩久久 | 97色在线观看免费视频 | 特黄一级 | 国产激情视频网站 | 99re视频在线| 色综合99| 国产福利资源在线 | 日韩精品一区二区久久 | 日韩成人免费视频 | 久久999 | 日本a∨视频 | 国产精品免费一区二区三区四区 | 成人影院网站ww555久久精品 | 日韩成人在线免费视频 | 国产精品亚洲第一区在线暖暖韩国 | 亚洲国产69 | 午夜精品久久 | 欧美一区二区三区,视频 | 国产精品黄色 | 国产丝袜一区二区三区免费视频 | 国产91九色| 欧美日韩成人一区二区 | 亚洲午夜精品视频 | 中国av在线免费观看 | 国产999精品久久久 日本视频一区二区三区 | 亚洲精品亚洲人成人网 | 中文字幕视频在线观看 | 日本福利在线 | www日本高清视频 | 亚洲精品成人网 | 国产精品区二区三区日本 | 免费久久99精品国产婷婷六月 | 免费毛片网站 | 日韩av一区二区在线观看 | 中国黄色毛片视频 |