SmartBar 2.0 是怎麼解決顏色自適應問題的?

有介紹( 【讀圖】一張圖告訴你Smart Bar 2.0的設計理念)說魅族的SmartBar 2.0可以自適應app的ui配色改變(如上面的網頁提到的skype),這是如何實現的?與 PARANOID ANDROID ROM的里的狀態欄和導航欄自適應有什麼聯繫與區別?
即將到來的Android 4.4 kitkat貌似有類似的改變,是否意味著魅族走在了前頭?


目前還沒上手 Flyme 3.0 ,從開發者這邊,魅族的整體主題基於 Theme.DeviceDefault.Light 定製,魅族應該是修改了 Framework 層一些代碼,加了自己的方法。從而讓開發者達到定義 SmartBar 顏色以及Overflow圖標的目的。

目前,SmartBar 通過讀取對 ActionBar 顏色的設置來統一 ActionBar 與 SmartBar 的顏色。技術上需要自定義一個 Style 文件繼承 Theme.DeviceDefault.Light ,而一些其它的定製則需要 reflect 一些魅族自定義方法,這些可以在魅族開發者社區找到。

================================================
補充一下,我所謂的SmartBar 通過讀取對 ActionBar 顏色的設置來統一 ActionBar 與 SmartBar 的顏色只是一種默認情況,事實上 SmartBar 的背景顏色是可以和 ActionBar 顏色不同的,我的那個 demo 里倒數第二個按鈕跳轉到的 Activity 就是。

附上我修改的官方demo,裡面有修改 SmartBar 顏色、圖標、隱藏的方法:
SmartBarDemo


有人注意過Win8任務欄的圖標嗎?也是一樣的


請問Flyme有沒有計劃讓用戶自行設置某些APP可以不現實SB欄呢?


推薦閱讀:

魅族便簽的塗鴉功能下,能畫出高逼格作品嗎?
如何評價魅族 NFC 標籤創意宣傳片?
魅族 MX4 的實際使用體驗如何?

TAG:魅族科技 | Android | Android第三方ROM | Flyme | Flyme30 |