Material Theme



Material Theme提供了一下功能:

1、系统widgets可以设置调色板

2、系统widgets的触摸反馈

3、Activity过渡动画


    你可以根据你品牌的色彩来定义Material Theme,可以使用Material Theme的色彩为status bar、action bar着色。参考下图。



系统Widgets有新的设计和触摸动画,你也可以在自己的应用中自定义色彩调色板、触摸反馈动画、Activity过渡。


Material Theme的定义如下:

  • @android:style/Theme.Material (dark version)
  • @android:style/Theme.Material.Light (light version)
  • @android:style/Theme.Material.Light.DarkActionBar

你可以使用一系列的material styles,查看 Android.R.style 参考。


Customize the Color Palette

    自定义主题的基础颜色以适应你品牌,使用Theme属性自定义颜色,Theme继承自Material Theme。

  1. <resources>  
  2.   <!– inherit from the material theme –>  
  3.   <style name=“AppTheme” parent=“android:Theme.Material”>  
  4.     <!– Main theme colors –>  
  5.     <!–   your app’s branding color (for the app bar) –>  
  6.     <item name=“android:colorPrimary”>@color/primary</item>  
  7.     <!–   darker variant of colorPrimary (for status bar, contextual app bars) –>  
  8.     <item name=“android:colorPrimaryDark”>@color/primary_dark</item>  
  9.     <!–   theme UI controls like checkboxes and text fields –>  
  10.     <item name=“android:colorAccent”>@color/accent</item>  
  11.   </style>  
  12. </resources>  
<resources> 
<!-- inherit from the material theme -->
<style name="AppTheme" parent="android:Theme.Material">
<!-- Main theme colors -->
<!-- your app's branding color (for the app bar) -->
<item name="android:colorPrimary">@color/primary</item>
<!-- darker variant of colorPrimary (for status bar, contextual app bars) -->
<item name="android:colorPrimaryDark">@color/primary_dark</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="android:colorAccent">@color/accent</item>
</style>
</resources>



Customize the Status and Navigation Bar


    使用material theme可以简单的自己定制status bar,可以让status bar适应你的产品,这个在iOS中也是可以实现的。可以设置android:statusBarColor属性来设置status bar的颜色。前面看到的

  1. android:colorPrimaryDark  
android:colorPrimaryDark

会默认设置为status bar的颜色。

    Java方法中可以使用Window.setStatusBarColor方法改变status bar来改变色彩。

Theme Individual Views


XML布局中定义元素可以指定android主题属性。就是可以为你的views在Theme中声明各种属性的值。


这一点,说的最主要的是可以改变status bar的颜色,以前的版本是不可以的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章