Android 任務和回退堆棧—預設啟動模式

啟動模式允許你定義一個新的Activity執行個體如何跟當前的任務進行關聯。以下兩種方法能夠定義不同的啟動模式:1.  使用資訊清單檔     當在資訊清單檔中聲明一個Activity時,你能夠指定這個Activity在啟動時應該如何跟任務進行關聯。2.  使用Intent標識    在調用startActivity()方法時,你能夠在Intent中包含一個標識,用來聲明這個新的Activity應該如何跟當前的任務進行關聯。因此,如果Activity A啟動Activity

Android畫布和圖形繪製—Canvas and Drawables(五)

Nine-patchNinePatchDrawable圖形是可展開的位元影像圖片,Android系統會根據View對象中的內容來自動的調整背景圖片。使用NinePatch圖片的一個例子就是標準Android按鈕的背景圖片---按鈕必鬚根據字串的長度來展開背景圖片。NinePathc圖形繪製的是一個標準的PNG圖片,它包含了一個像素寬的邊框。圖片檔案的副檔名必須是.9.png,並且要儲存到工程的res/drawable/目錄中。邊框被用於定義圖片的展開和靜態地區。通過在邊框的左邊和上邊(其他邊框的

Android Service—啟動服務

你能夠通過把一個Intent對象(指定要啟動的服務)傳遞給StartService()方法,從一個Activity或其他的應用程式組件啟動服務。Android系統調用服務的onStartCommand()方法,並且給它傳遞Intent對象(你不應該直接調用onStartCommand()方法)例如,一個Activity能夠使用帶有明確的Intent對象的startService()方法來啟動一個服務:Intent intent = new Intent(this,

Android 任務和回退堆棧—處理親緣關係

親緣關係是指Activity願意屬於哪個任務。預設,來自同一個應用程式的所有的Activity彼此有一個親緣關係。因此,預設情況下在同一個應用程式中的所有Activity都應該屬於同一個任務。但是,你能夠給一個Activity修改預設的親緣關係。Activity被定義在不同的應用程式中能夠共用一個親緣關係,或者Activity被定義在同一個應用程式中能夠跟不同任務的親緣關係進行關聯。你能夠使用<activity>元素的taskAffinity屬性來修改任意給定的Activity的親緣

Android圖形—硬體加速(Hardware Acceleration)(一)

本文譯自:http://developer.android.com/guide/topics/graphics/hardware-accel.html從Android3.0(API Level 11)開始,Android

Android 任務和回退堆棧—清除回退堆棧

如果使用者長時間的離開一個任務,那麼系統會清除這個任務根Activity以外的所有Activity。當使用者再次返回這個任務時,只有根Activity被儲存。系統行為的這種方式是因為經過長時間以後,使用者在返回這個任務之前可能已經放棄它們的作業,而開始了某些新的任務。你能夠使用一些Activity屬性來修改這種行為:1.  alwaysRetainTaskState如果這個屬性在一個任務的根Activity中被設定為“true”,那麼像上面描述的那樣的預設行為就不會發生。即使是長時間之後,這個任

Android圖形—硬體加速(Hardware Acceleration)(二)

本文譯自:http://developer.android.com/guide/topics/graphics/hardware-accel.html判斷一個View對象是否被硬體加速有些時候,尤其是對於那些定製的View對象,應用程式知道當前的View對象是否被硬體加速是十分有益的。如果應用程式做了很多定製的繪圖操作,並且不是所有的操作都會被新的渲染管道所支援,那麼這種判斷就特別有用。有兩種不同的方法來檢查應用程式是否被硬體加速了:1. 如果一個View對象跟一個被硬體加速的視窗綁定,那麼Vi

Android 任務和回退堆棧—啟動任務

你能夠通過用“android.intent.action.MAIN”和“android.intent.category.LAUNCHER”分別給Intent過濾器指定行為和類別,從而建立一個Activity作為一個任務的入口。例如:<activity ... >    <intent-filter ... >        <action android:name="android.intent.action.MAIN" />       

Android圖形—硬體加速(Hardware Acceleration)(三)

不被硬體加速所支援的繪圖操作在硬體加速的時候,2D渲染管道支援大多數的通常用於Canvas的繪圖操作,以及一些很少使用的操作。被用於渲染應用程式的所有的繪圖操作都有發送給Android系統,預設的Widget和布局,以及一些常用的可視效果,如反射和瓷磚的紋理效果都是被支援的。以下列出了已知的不支援硬體加速的操作:1. CanvaschipPath()chipRegion()drawPicture()drawPosText()drawTextOnPath()drawVertives()2. Pai

Android Activity概要

 一個Activity是提供給使用者的用於與程式進行互動的介面組件,如打電話、拍照片、發郵件、或看地圖等。每個Activity就是一個用來描畫使用者介面的介面,通常這個視窗時全屏的,但是也可以比螢幕小,並且可以浮動在其他視窗的上面。 一個應用程式通常由多個Activity組成,它們彼此鬆散的綁定到一起。通常,在一個應用程式中要指定一個Activity作為主Activity,當使用者啟動應用程式時,這個Activity首先表現給使用者。然後,每個Activity為了執行不同的行為,能夠啟動另一個A

Android圖形—硬體加速(Hardware Acceleration)(四)

本文譯自:http://developer.android.com/guide/topics/graphics/hardware-accel.htmlView層在Android的所有版本中,通過使用View對象的繪圖緩衝,或使用Canvas.saveLayer()方法,View對象都具有在螢幕外緩衝區呈現的能力。螢幕外緩衝區或層由多種用途。在呈現複雜的動畫或使用組合效果時,它們能夠獲得更好的效能。例如,使用Canvas.saveLayer()方法暫時把一個View對象呈現在一個層中,然後使用不透

Android Services—基礎

要建立一個服務,你必須建立一個Service類(或一個既存的Service子類)的子類。在你的實現中,你需要重寫一些處理服務生命週期關鍵特徵的回調方法,並且給組件提供一種合適的綁定服務的機制。需要重寫的重要的回調方法如下:onStartCommand()當一個組件通過調用startService()方法請求啟動一個服務時,系統會調用這個服務的onStartCommand()方法。一旦這個方法執行了,那麼這個服務就被啟動,並且在後台無限期的運行。如果你實現了這個方法,當服務的工作結束時,你有責任通

Android畫布和圖形繪製—Canvas and Drawables(三)

本文譯自:http://developer.android.com/guide/topics/graphics/2d-graphics.html圖形繪製Android為繪製圖形和圖片提供了一個定製的2D圖形類庫。android.graphics.drawable包中能夠找到用於繪製二維圖形的共同的類。本文討論使用Drawable對象來繪製圖形的基礎知識,以及如何使用Drawable類的子類。關於使用Drawable對象來繪製幀動畫的資訊,請看繪製動畫文檔(http://developer.and

Android圖形—硬體加速(Hardware Acceleration)(五)

本文譯自:http://developer.android.com/guide/topics/graphics/hardware-accel.htmlView層和動畫當應用程式被硬體加速的時候,硬體層能夠傳遞更快、更平滑的動畫。當播放具有複雜的繪圖操作的動畫時,以每秒60幀的速度播放不總是可能。這樣能夠通過使用硬體層把View對象呈現在硬體紋理中,可以緩解這種情況。硬體紋理能夠被用於動畫視圖,這樣在該View對象呈現動畫時,就可以消除View對象所需要的重繪操作。直到View對象的屬性發生變化時

Android Service—在清單中聲明一個服務

像Activity(和其他的組件)一樣,所有的服務都必須在應用程式的資訊清單檔中聲明。要聲明服務就要給<application>元素添加一個<service>子項目,例如:<manifest ... >  ...  <application ... >      <service android:name=".ExampleService" />      ... 

Android圖形—OpenGL(一)

本文譯自:http://developer.android.com/guide/topics/graphics/opengl.htmlAndroid系統包含了OpenGL(Open Graphics Library),從而給2D和3D圖形提供了高效能的支援,尤其是OpenGL ES API。OpenGL是一個跨平台圖形API,它給3D圖形處理指定了一個標準的軟體介面。OpenGL ES是一種用於嵌入式裝置的OpenGL規範。從Android1.0開始,就提供了對OpenGL

Android Service—建立一個被啟動類型的服務

一個啟動類型的服務是另一個組件通過調用startService()方法,產生一個調用服務的onStartCommand()方法而啟動的服務。當一個服務被啟動時,它有一個獨立與啟動它的組件的生命週期,並且這個服務能夠無限期的在後台運行,即使啟動它的組件被銷毀了。因此這個服務應該在工作結束時通過調用stopSelf()方法來終止自己,或者另一個組件通過調用stopService()方法也能終止這個服務。像Activity這樣的應用程式組件能夠通過調用startService()方法來啟動服務,並且給

Android圖形—OpenGL(二)

本文譯自:http://developer.android.com/guide/topics/graphics/opengl.htmlOpenGL 包一旦使用GLSurfaceView和GLSurfaceView.Renderer類給OpenGL建立了一個View容器,那麼就可以開始使用以下的類來調用OpenGL的API:1. OpenGL ES 1.0/1.1 API 包android.opengl------這個包給OpenGL ES

Android Service—繼承IntentService類

因為大多被啟動類型的服務不需要同時處理多個請求(這實際是一個危險的多線程情境),因此使用IntentService類來實現自己的服務可能是最好的。IntentService類執行以下操作:1.  建立一個獨立與應用程式主線程的預設背景工作執行緒,執行所有的給onStartCommand()方法Intent的處理;2.  建立一個工作隊列,以便每次只給你的onHandleIntent()方法實現傳遞一個Intent,因此你不必擔心多線程的問題;3.  所有的啟動請求都被處理之後終止這個服務,因此你

Android 任務和回退堆棧—管理工作

Android通過把所有的已啟動的Activity依次放到同一個後進先出的堆棧裡來進行管理,對於大多數應用程式來說這種方法能夠很好的工作,並且你不必擔心Activity是如何跟任務關聯的或者他們是如何存在回退堆棧中的。但是,你可能決定要打破這種通常的行為。或許你想要應用程式中的一個Activity在啟動的時候開啟一個新的任務(而不是放在當前的任務中);或者當你啟動一個Activity時,你想使用之前既存的執行個體(而不是在回退堆棧的頂部建立一個新的執行個體);或者你想在使用者離開這個任務時清除回

總頁數: 2771 1 .... 830 831 832 833 834 .... 2771 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.