天天看點

Material Design詳解 主題布局

Material Design:

Material Design是Google推出的一個全新的設計語言,它的特點就是拟物扁平化。

Material Theme

使用Material主題:

Material主題隻能應用在Android L版本。

應用Material主題很簡單,隻需要修改res/values/styles.xml檔案,使其繼承android:Theme.Material。如下

<!-- res/values/styles.xml -->  
    <resources>  
      <!-- your app's theme inherits from the Material theme -->  
      <style name="AppTheme" parent="android:Theme.Material">  
        <!-- theme customizations -->  
      </style>  
    </resources>  
           

或者在AndroidManifest.xml中直接設定主題:

android:theme=”@android:style/Theme.Material.Light”

自定義Material主題:

material主題可以定義為如下形式:

@android:style/Theme.Material

@android:style/Theme.Material.Light

@android:style/Theme.Material.Light.DarkActionBar

對于其他主題風格可以參考API文檔(android.R.style)

自定義顔色基調(color palette)

material可以根據自定的品牌風格,自定義主題的基礎色調,如下(參考下方圖檔):

自定義狀态條和導覽列:

material還允許你輕松的自定義狀态條和導覽列的顔色。

可以使用如下屬性(參考下方圖檔):

android:statusBarColor,Window.setStatusBarColor

Material Design詳解 主題布局

相容性:

由于Material Theme隻可以在Android L Developer Preview中使用。

是以在低版本使用的話就需要為其另設一套主題:

在老版本使用一套主題 res/values/styles.xml,在新版本使用Material主題res/values-v21/styles.xml.

Layout特點簡述:

我個人簡單了解(非常初級的了解)Android L的Material設計中Layout主要有以下幾點:

1.Paper Craft(紙工藝):

在material的設計中,每一個應用程式所繪制的像素都像駐留在一張紙上。

紙具有平坦的背景顔色,并且可以調整大小,以滿足各種用途。一個典型的布局是由多張紙組成。
           

2 . Floating Actions

浮動操作,我也不知道翻譯成什麼比較貼切。

我個人了解它主要作用是一個承上啟下的浮動按鈕,承接了兩個布局或者不同功能的轉換
           

3 .Z軸:

Android L中相對于之前X,Y軸又新增了Z軸的概念,有了Z軸可以做出更加具有立體感的控件。

如下圖是一個根據按鈕狀态來調整Z軸的高度    
           

相容性:

為了适應Material Design的變化,是以Android L版本的布局并不能和老版本的通用。

我們可以使用不同檔案目錄,來設定兩套布局分别對應Android L和低版本:

res/layout/,res/layout-v21/