1. 程式人生 > >Android系統自帶主題初探

Android系統自帶主題初探

Android系統有很多自帶的主題,而且,隨著Androi版本的不斷更新,系統的預設主題也在不斷的變化,這裡就簡要介紹一下5.0系統的主題。

1. 系統自帶的主題

那麼系統自帶的主題有哪些呢,在工程目錄\frameworks\base\core\res\res\values下,我們可以看到以下檔案:


這就是android定義各種風格的檔案了,其中themes.xml主要定義低版本的風格,themes_holo.xml主要用於4.0的各種版本,而themes_material.xml則是5.0使用的風格。

2. 系統載入主題的邏輯

既然有這麼多的主題,系統是怎麼知道要載入哪個主題呢?在\frameworks\base\core\java\android\content\res的Resources.java檔案裡,決定了系統使用哪一個主題:


從程式碼裡可以看出,系統在設定主題的時候,是按照版本來的,預設的是Theme_DeviceDefault_Light_DarkActionBar主題,這個就是5.0系統預設的主題。它在檔案Themes_device_default.xml中定義了:<style name="Theme.DeviceDefault.Light.DarkActionBar" parent="Theme.Material.Light.DarkActionBar" />,可以看出,它就是繼承自Material主題。其實在Themes_device_default.xml檔案裡,幾乎所有的主題都是繼承自Material主題,這也就很好解釋了5.0就是使用的Material風格的主題。

相關推薦

Android系統主題初探

Android系統有很多自帶的主題,而且,隨著Androi版本的不斷更新,系統的預設主題也在不斷的變化,這裡就簡要介紹一下5.0系統的主題。 1. 系統自帶的主題 那麼系統自帶的主題有哪些呢,在工程目錄\frameworks\base\core\res\res\values

android 系統主題樣式及定義主題樣式

From: http://blog.csdn.net/dawanganban/article/details/17732701 http://www.cnblogs.com/bluestorm/archive/2012/07/12/2588724.html

調用aNDROID系統功能

ont hao123 provide music content vid uri android系統 系統 CONTENTpROVIDER%E5%9F%BA%E7%A1%80%E4%B9%8BURI http://music.hao123.com/songlist/495

Android系統的MediaRecorder結合Camera實現視訊錄製及播放功能。

    近期,公司專案新增了需求,需要視訊錄製,然後儲存到本地,再播放...。 看了很多其他的框架,說不出好壞,應該說各有千秋吧。但我覺得還是原生的靠譜,就是谷歌系統自帶的MediaRecorder。 不多說上程式碼吧(已經測試,沒問題)。 程式碼沒什麼複雜的,都是些

Android 系統圖片裁剪功能(適配7.0、8.0、對了還有小米手機)

前段時間寫了如何獲取相簿和拍照之後的照片並且進行顯示和上傳,這一次是如何進行圓形影象製作,經常看我寫的筆記的人會知道,我很懶。那麼我就懶的自定義了,目前需求就用原生的就好了,大神的輪子,我會在後面進行推薦。這篇筆記是依賴於:Android呼叫相簿、相機(相容6.0、7.0、8.0) 文

Android系統的camera預設使用後置攝像頭

 a/packages/apps/Camera/src/com/android/camera/CameraSettings.java +++ b/packages/apps/Camera/src/com/android/camera/CameraSettings.java @@ -420,

Android系統Spinner+Adapter基礎

屬性:android:spinnerMode="" 下拉選單的展示方式 屬性值:dropdown-下拉方式(預設的) dialog-對話方塊方式 如果下拉方式是dialog,那麼可以指定標題android:prompt="@string/title"(只能引用,不能直接寫文字) androi

android系統的適配佈局activity_list_item

理想:註冊頁面,資訊填寫後,跳轉到另外一個activity 結果:一點註冊,app就閃退 日誌顯示:java.lang.IllegalStateException: ArrayAdapter requ

Android系統更新DownloadManager用法

效果圖如下:    ↳ android.app.DownloadManager 下載管理器是一個處理長時間執行的HTTP下載的系統服務,通過此API請求下載的應用程式應為ACTION_NOTIFICATION_CLICKED註冊一個廣播接收器,以便在使用者單擊通

如何在自己的App中呼叫Android系統的安裝/解除安裝程式

AppUtils裡面寫了如何安裝和解除安裝apk(這段程式碼出自這裡:點選開啟連結~),這裡的安裝和解除安裝呼叫的是Android本身的一個安裝解除安裝,所以可能頁面不會太優雅,並不符合商業App的期望,如果要做到更優雅的實現,就要用到靜默安裝/解除安裝,這個可以參照網上教

Android系統AEC/AGC/NC的demo

1.聲學回聲消除器(AEC) AcousticEchoCanceler類消除了從遠端捕捉到音訊訊號上的訊號的作用,回聲消除AcousticEchoCanceler繼承自AudioEffect. 2.自動

Android 系統Activity效果

1.fullscreen Activity 佈局: <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.and

Android-系統通知欄and定義通知欄

系統自帶通知欄:在佈局檔案中寫一個button,寫一個sendNotification方法public void sendNotification(View view){ //例項化通知管理器 NotificationManager notif

Android系統分享功能的實現(可同時分享文字和圖片)

簡單,不解釋,直接上程式碼,可直接使用! 程式碼如下: /** * 分享功能 * * @param context * 上下文 * @param activ

Android 系統隱式intent應用

完成效果:撥打電話,傳送簡訊,播放音樂,播放視訊,開啟網頁,檢視圖片,通知欄。 PopWindow中完成效果:拍照片,從相簿選擇照片並且可裁減。 首先在清單檔案中加入如下許可權: <uses-permission android:name="android.perm

Android有趣的全透明效果--Activity及Dialog的全透明(附android系統圖示大全)

1.Activity全透明 同學zzm給了這個有趣的程式碼,現在公佈出來。 先在res/values下建colors.xml檔案,寫入: <? xml version = "1.0" encoding = "UTF-8" ?> < resour

Android系統樣式(android:theme)

android:theme="@android:style/Theme.Dialog" : Activity顯示為對話方塊模式 android:theme="@android:style/Theme.NoTitleBar" : 不顯示應用程式標題欄 android:t

呼叫Android系統相機拍照,從相簿中獲取圖片(相容7.0系統

一,前言: 在日常的手機應用開發過程中,經常會遇到上傳圖片的需求,像上傳頭像之類的,這就需要呼叫系統的相機,相簿獲取照片。但是在Android 系統7.0之後認為這種操作是不安全的,這篇文章主要就是記錄7.0獲取照片遇到的問題。 二,FileProvider介紹 都

Activity及Dialog的全透明(附android系統圖示大全)

一.Activity全透明  1.在res/values下建立一個colors.xml檔案,寫入透明色 <?xml version="1.0" encoding="utf-8"?> <resources> <!-- 透明 -->

Android分享---調用系統的分享功能

contex source dem jpg 用戶 資源 相同 一個 style 以前我們總想到友盟等平臺分享功能的集成,集成這玩意還得下載對應的jar包。當然,用這些平臺的分享並不是說什麽好處都沒有,至少人家的統計功能還是很實用的。不過有的時候我們是不需要多余功能的,只需要