Android-风格和主题

少年恃险若平地,独倚长剑凌清秋。这篇文章主要讲述Android-风格和主题相关的知识,希望能为你提供帮助。
Android-风格和主题
一 Style和主题Theme的差别
1。Theme是针对窗口级别的,改变窗口样式
2。Style是针对窗口元素级别的。改变指定控件或者Layout的样式
二 使用Style的方式
1,创建Style
在res/values下创建styles.xml文件
加入节点(根节点)
加入自己定义的style和其属性:
style的写法格式

< style name="MyStyle" parent="指定的父style"

name前面不须要有android:
< item name="ATTR须要设置的属性名"> [VALUE设定的值]< />

parent属性可选,能够继承其它style的属性,当须要对现有的style做微小的
改变的时候,这个值非常实用
实例:
< style name="ChengzhiStyle"> < item name="android:textColor"> #FFF0000< /item> < /style>

【Android-风格和主题】2,为控件指定style
在layout中指定:
< TextView style="@style/MyStyle"/>

三 主题Theme
1,用法:
在manifest文件里,为Activity指定theme属性(推荐使用这样的方式)
android:theme="@style/AppTheme">

或者在Activity创建是调用setTheme函数(必须在setContentView之前调用。不推荐使用)
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //设置主题 setTheme(R.style.AppTheme); setContentView(R.layout.layout_portrait); }

2。使用系统自带的Theme
经常使用的系统Theme例如以下图:
Android-风格和主题

文章图片

3,自己定义Theme
Android-风格和主题

文章图片

< style name="MyTheme" [parent="继承的主题"] < item name="ATTR"> [VALUE]< /> < /style>

4,实例毛玻璃效果
毛玻璃效果:就是非常多程序第一启动时的界面,或者弹出的对话框后面的模糊的Activity界面
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //设置毛玻璃效果 getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND); }



















    推荐阅读