Time of Update: 2018-12-03
建立定製化的通知布局預設情況下,在通知視窗顯示的通知包括標題和訊息文本。這兩項內容使用通過setLatestEventInfo()方法的contentTitle和contentText參數來定義的。但是,你也能夠使用RemoteViews類給通知定義一個定製化的布局。3所示就是一個定製的通知布局的例子。它看上去與預設的通知類似,但是實際上它是用一個定製的XML布局來建立的。圖3.帶有定製化布局的通知。要給通知建立自己的布局,就要執行個體化一個RemoteViews對象,用它來填充一個定製的布局檔
Time of Update: 2018-12-03
用Android的拖放架構,能夠允許使用者使用圖形化的拖放手勢,把資料從當前布局中的一個View對象中移到另一個View對象中。這個架構套件括:拖拽事件類別、拖拽監聽器、以及輔助的方法和類。儘管這個架構主要是為資料移動設計的,但是你能夠把它用於其他的UI操作。如,你能夠建立一個調色應用程式,使用者把一個顏色的表徵圖拖到另一個顏色表徵圖之上,完成兩個顏色的調配操作。概要當使用者使用一些被認可的手勢訊號來開始拖動資料時,一個拖放操作就開始了。在響應中,應用程式會告訴系統拖動正在啟動。系統就會回調應用
Time of Update: 2018-12-03
拖拽事件監聽器和回調方法View對象既可以用實現View.OnDragListener介面的拖放事件監聽器,也可以用View對象的onDragEvent(DragEvent)回調方法來接收拖拽事件。當系統調用這個回調方法或監聽器時,都要給它們傳遞一個DragEvent對象。在大多數情境中你可能會使用監聽器。因為在設計UI介面時,通常沒有View類的子類,而使用回調方法,為了覆寫這個方法,就會強制你使用View類及子類。相比之下,你可以實現一個監聽器類,然後再幾個不同的View對象中使用。你還可以
Time of Update: 2018-12-03
本文檔介紹Android系統其他可定義在代碼外部的資源,主要包括:Bool型資源:定義布爾值的XML資源。Color型資源:定義顏色值的XML資源(十六進位顏色值)。Dimension型資源:定義尺寸的XML資源(帶有尺寸單位)。ID型資源:給應用程式資源和組件提供唯一標識的XML資源。Integer型資源:定義整數值的XML資源。Integer Array型資源:定義整數數組的XML資源。Typed
Time of Update: 2018-12-03
使用資源提供最好的裝置相容性為了讓應用程式支援多種裝置配置,始終給應用程式使用的每種資源類型都提供預設的資源是至關重要的。例如,如果應用程式支援幾種語言,就要始終包含沒有語言和地區限定符的values/目錄。如果把所有的字串檔案都放到由語言和地區限定符的目錄中,那麼當應用程式運行在不支援應用程式提供的語言集的裝置上時,就會崩潰。但是,只要提供了預設的values/資源,應用程式就會正確的運行(即使使用者不能理解應用程式提供的語言集,也比程式崩潰要好。)同樣,如果基於螢幕的方向,提供了不同的布局資
Time of Update: 2018-12-03
本文檔用於介紹資來源目錄(res/)中提供的每種應用程式資源類型的用法、格式和文法。以下是每種資源類型的概要介紹:動畫資源(Animation Resources) 定義預定的動畫 補間動畫被儲存在res/anim/目錄中,並且使用R.anim類來訪問。 幀動畫被儲存在res/drawable/目錄中,並且使用R.drawable類來方法。顏色值資源(Color State List Resource) 基於View對象的狀態的改變來定義顏色資源。
Time of Update: 2018-12-03
測試本地化應用程式在裝置上測試要記住,你所使用的測試裝置可能與其他地區消費者使用的裝置有明顯的不同。測試裝置上的語言環境與其他裝置存在差異,還有裝置螢幕的解析度和密度也可能不同,這些都會影響到UI中的字串和可描畫資源的顯示。使用Android系統的設定應用程式(Home->Menu->Settings->Locale&text->Select
Time of Update: 2018-12-03
複合控制項如果不想建立一個完全定製的組件,而是想要把一組既存的控制項放到一起,形成一個可重用的組件,那麼建立一個複合組件(或複合控制項)是一個合適的選擇。在一個容器中,複合組件把多個原子化的控制項(或View)組合成一個邏輯組,它能夠處置一件單一的事情。例如,ComboBox控制項,就是通過一個單行文本域、一個按鈕和一個彈出列表組合而成的,如果按下按鈕並且從列表中選擇了一項,那麼選擇項就會填入單行文本域,而且如果使用者喜歡,也可以直接把內容輸入到文本域中。在Android中,實際上有另外兩Vie
Time of Update: 2018-12-03
本地化Checklists這些Checklist總結了本地化Android應用程式的過程,不是列表中的每一項都適用於每個應用程式。規劃和設計Checklist1選擇一個本地化策略。應用程式要支援哪些國家和語言?應用程式的預設國家和語言是什嗎?當給定的語言環境中沒有可用的資源時,應用程式應該如何處理?2要識別應用程式中需要本地化的每一件事:1. 要考慮應用程式具體的細節---文本、圖片、聲音、音樂、數字、貨幣、日期和時間等。不是每件事情都要本地化。如,用於看不到的那些文本就不需要本地化,或者是中
Time of Update: 2018-12-03
Adroid通過提供一個開發的開發平台,給開發人員提供構建豐富而新穎的應用程式的能力。開發人員可以自由的利用硬體裝置、訪問本地資訊、運行後台服務、設定鬧鐘、在狀態列上添加通知等。 開發人員完全訪問那些被核心應用使用的framework的API,應用架構的設計,旨在簡化組件的重用。任何應用都發行就緒它的功能,以便其他的應用能夠重用這些功能(在架構強制性安全約束之下)。同樣這種機制允許組件被使用者替換。 所有的應用程式都是一組相關的服務和系統,包括:
Time of Update: 2018-12-03
應用程式的資源,片和字串等應該始終放到代碼的外部,這樣可以獨立的維護它們。把資源放到外部還能夠提供支援特殊裝置配置的可選資源,如不同的語言或螢幕尺寸。隨著Android支援的帶有不同配置的裝置越來越多,這種代碼與資源分離的特性也日益變的重要。為了提供不同配置的相容性,必須把資源群組織到工程的res/目錄中,使用各種子目錄把不同類型的配置資源分組。對於任意類型的資源,都可以給應用程式指定預設資源和多種可選資源:1. 預設資源是那些裝置配置無關的資源,或者是沒有與當前配置匹配的可選資源時所使用的資
Time of Update: 2018-12-03
當Activity收到焦點時,就會請求描畫它的布局。Android架構將處理這個描畫過程,但是Activity必須提供它的布局層次的跟節點。描畫從布局的根節點開始。它要度量和描畫布局樹。描畫是通過遍曆整個布局樹來處理的,並在遍曆過程中呈現每個與無效地區相交的View對象。每個ViewGroup依次負責請求它的每個子View進行描畫(使用draw()方法),每個View對象負責描畫自己。因為布局樹是依次遍曆的,這就意味著父節點將在它的子節點之前進行描畫,而同級節點則會按照它們在樹中的顯示順序來描畫
Time of Update: 2018-12-03
Android包含了一組被Android系統各種組件使用的C/C++類庫。這些類庫功能通過Android應用程式框架暴露給開發人員。下面列出一些核心類庫:系統C庫------派生與BSD的標準C庫(libc)的實現,並且基於嵌入式的Linux裝置進行了調整;多媒體庫------基於PacketVideo公司OpenCORE的多媒體類庫,這個類庫支援許多流行的音/視格式的回放和錄音,以及靜態圖片檔案,如:PPEG4、H.264、MP3、AAC、JPG、PNG。介面管理器------管理對顯示子系
Time of Update: 2018-12-03
本文譯自:http://developer.android.com/guide/topics/graphics/2d-graphics.html形狀繪製在想要動態繪製一些二維圖形的時候,ShapeDrawable對象將會滿足你的需要。用ShapeDrawable對象能夠編程繪製任何能夠想象得到的原始形狀和主題樣式。ShapeDrawable類是Drawable類的一個子類,因此能夠在任何期望使用Drawable對象的地方使用ShapeDrawable對象---如用setBackgroundDra
Time of Update: 2018-12-03
樣式是給View或Window指定外觀和格式的屬性集合。樣式能夠指定如高、邊距、字型顏色、字型尺寸、背景顏色等屬性。樣式被定義在一個與布局XML檔案分開的XML資源檔中。Android中的樣式與Web設計中的層疊式樣表類似,允許與內容分開設計。例如,通過使用樣式,可以把下面這個布局XML轉換成引用樣式的聲明:不使用樣式屬性:<TextView android:layout_width="fill_parent"
Time of Update: 2018-12-03
樣式屬性理解了樣式是如何定義的之後,就需要學習<item>元素都定義了那些有效樣式屬性類型。你可能已經熟悉了像layout_width和textColor屬性,但是還有更多的可以使用的樣式屬性。尋找應用於指定的View對象的最好的地方是對應的類參考,類參考中會列出所有的XML所支援的屬性。例如,在TextView類的XML屬性工作表中列出了所有的能夠用於定義TextView元素(或者它的一個子類)的樣式。在這個類參考中列出了一個屬性:android:inputType,這個屬性通常被
Time of Update: 2018-12-03
public void onStart()當該Fragment對象對使用者可見時,該方法會被調用。該方法通常會跟它的Activity的生命週期的Activity.onStart()方法綁定。public void onStop()當Fragment對象被終止的時候,該方法會被調用,它通常會跟它的Activity的生命週期的Activity.onStop()方法綁定。public void onTrimMemory(int level)當作業系統判斷某個時機是從進程中消除不需要的記憶體的好時機時,
Time of Update: 2018-12-03
基於布局類View和ViewGroup的準系統,Android為建立自己的UI介面提供了先進和強大的定製化模式。首先,平台包含了各種預置的View和ViewGroup子類---Widget和layout,可以使用它們來構造自己的UI介面。部分的可以利用的widget包括:Button、TextView、EditText、ListView、CheckBox、RadioButton、Gallery、Spinner、以及比較特殊用途的AutoCompleteTextView、ImageSwitcher
Time of Update: 2018-12-03
public void setTargetFragment(Fragment fragment, int requestCode)該方法給該Fragment對象設定一個可選的目標。例如,如果該Fragment對象使用由另一個Fragment對象啟動的,並且在想要把一個給定的結果返回給第一個Fragment對象時,就可以使用這個方法。這裡被設定的目標是通過FragmentManager.putFragment()方法保留的執行個體。參數fragment
Time of Update: 2018-12-03
註:本文譯自:http://developer.android.com/guide/topics/graphics/2d-graphics.html在View對象上繪圖如果應用程式不需要大量的圖形處理或很高的畫面播放速率(如一個棋類遊戲、Snake遊戲或另外的慢動畫類應用程式),那麼就應該考慮建立一個定製的View組件,並且用該組件的View.onDraw()方法的Canvas參數來進行圖形繪製。這麼做最大的方便是,Android架構會提供一個預定義的Canvas對象,該對象用來放置繪製圖形的調