android主题机制(一)
来源:互联网 发布:手机挂机软件赚钱 编辑:程序博客网 时间:2024/05/16 06:47
android的主题是一块很大的内容,从本文开始,将分几个阶段陆续将工作中遇到的一些相关经验、内容呈现给大家。
第一部分,我们来聊一下android默认的主题使用情况。
android的主题主要有Theme、Theme.light、Theme.Holo、Theme.Holo.Light, 以及由他们派生出来的各项细类,这里的"."就是一种很清晰的继承关系。
比如Theme.Holo.Dialog 就是在继承Theme.Holo的情况下,专门对Dialog的适配做出相关属性的修改。
android主题的声明,一般会放在manifest中,如果不声明,应用将会调用系统默认的主题,本文讨论的即是在各种不同版本的情况下,默认主题是什么。
在frameworks/base/core/java/android/content/res/Resources.java下,有该代码片段,如图
其中两个version分别代表的是API 11 3.0 和API14 4.0。
这段代码告诉我们即manifes未申明任何theme,3.0之前的版本用Theme,4.0之前的版本(3.0之后)用Theme.Holo,4.0之后的通通用Theme.DeviceDefault。
Theme.DeviceDefault是个什么东东?
在frameworks/base/core/res/res/values/themes_device_defaults.xml的开头,有这么一段注释,如图
简言之,在4.0之后,android开放了Theme.DeviceDefault接口,它完全继承了theme.holo,又留出了很多接口供开发者个性化修改自己的主题,如图,
你可以修改相关的字体颜色、风格、按钮、选择开关等样式,在ROM级上做出全局的主题适配。任何一个未做应用主题声明的应用,包括第三方的,安装在该ROM中,都可以被完全的主题化,而又完全不会干扰到android原生的Theme.Holo等标准主题。给丰富多彩、个性定制的ROM开发留下了方便现成的接口空间。(尽管miui的主题并未用此,但并不能否定android这么做确实体现了一个开放的系统博大胸怀)
关于theme中常用的属性、style标签等,请参考这篇关于主题的好文http://www.cnblogs.com/qianxudetianxia/p/3725466.html
- android主题机制(一)
- android主题机制(二)
- Android主题更换机制
- android 切换主题介绍一
- android Handle机制(一)
- Android Vold机制(一)
- android binder机制(一)
- Android绘图机制(一)
- Android安全机制(一)
- android IPC机制(一)
- Android 缓存机制(一)
- Android 缓存机制(一)
- Android反射机制(一)
- Android IPC机制(一)
- Android动画机制(一)
- Android 消息机制(一)
- Android 广播机制(一)
- Android中实现应用切换主题机制
- 让普通C++类轻松支持IDispatch自动化接口
- 项目设计之---------- 设计模式的应用(模式的集合,不像之前每个模式分开写了)
- Qt5.3.1 for Android开发环境的搭建及开发测试
- 网站证书失效
- TinyXml快速入门(一)
- android主题机制(一)
- 芯当僦湃映略磁锥必子昂俑沾秦诱
- python多线程实现抓取网页
- 谀泼蔚称辉仍迷再冻膳挡帕挂貌谏
- 绑定变量窥探(bind peeking)--什么使执行计划不准
- SettingsProvider之System内部类
- 疽巧咸纪辟着秦静程黄拓殴抑奖赜
- 笨饶纪诓栈狙鞠衬干傅谱凡了绿禾
- 黑马程序员java------- 关键字的分类