获取在attr.xml中声明的主题样式
在换肤时,先在attr.xml中定义Resource的属性名,再到stytle中,根据不同的主题,给属性赋值。
在布局文件中可直接以 android:background="?attr/app_bg" 引用。
/** 获取attr的资源 */
public int getResIdOfAttr(int attr){
TypedValue typeValue = new TypedValue();
getTheme().resolveAttribute(attr, typeValue, true);
return typeValue.resourceId;
} /** 获取attr的color */
public int getColorOfAttr(int attr){
TypedValue typeValue = new TypedValue();
getTheme().resolveAttribute(attr, typeValue, true);
return getResources().getColor(typeValue.resourceId);
}
其中获取color时,因为View的setColor(int color)中传入的不是资源Id,所以多做了一步处理
获取在attr.xml中声明的主题样式的更多相关文章
- Spring AOP 在XML中声明切面
		
转载地址:http://www.jianshu.com/p/43a0bc21805f 在XML中将一个Java类配置成一个切面: AOP元素 用途 <aop:advisor> 定义AOP通 ...
 - SpringMVC: web.xml中声明DispatcherServlet时一定要加入load-on-startup标签
		
游历SpringMVC源代码后发现,在web.xml中注冊的ContextLoaderListener监听器不过初始化了一个根上下文,只完毕了组件扫描和与容器初始化相关的一些工作,并没有探測到详细每一 ...
 - SpringMVC: web.xml中声明DispatcherServlet时一定要添加load-on-startup标签
		
游历SpringMVC源码后发现,在web.xml中注册的ContextLoaderListener监听器只是初始化了一个根上下文,仅仅完成了组件扫描和与容器初始化相关的一些工作,并没有探测到具体每个 ...
 - JS获取对象在内存中计算后的样式
		
通过obj.style的方式只能取得"内联style"的值,对于<style></style>中的css属性值,则无能为力 . 我们可以用obj.curre ...
 - 笔记11  在XML中声明切面(2)
		
为通知传递参数 1.声明一个CompactDiscs接口.内部包含两个方法: show() 用于显示唱片的名字和艺术风格 playTrack(int number) 根据传入的磁道数播放相应磁道的音乐 ...
 - 笔记10  在XML中声明切面(1)
		
1.无注解的Audience package XMLconcert; public class Audience { public void silenceCellPhones() { System. ...
 - Spring 在XML中声明切面/AOP
		
在Spring的AOP配置命名空间中,我们能够找到声明式切面选择.看以下: <aop:config> <!-- AOP定义開始 --> <aop:pointcut/> ...
 - ServletConfig对象 【通过此对象获取到web.xml中的信息】
		
用途: 1)想让当前的Servlet读取一些在web.xml文件配置的初始化参数时, 可以使用ServletConfig对象,他是Servlet运 ...
 - AndroidManifest.xml中声明权限——各种permission含义摘录
		
android.permission.EXPAND_STATUS_BAR 允许一个程序扩展收缩在状态栏,android开发网提示应该是一个类似Windows Mobile中的托盘程序 android. ...
 
随机推荐
- js call apply caller callee bind
			
call apply bind作用类似.即调用一个对象的一个方法,以另一个对象替换当前对象. call 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) ...
 - jetty与hessian结合
			
Hessian是由caucho提供的一个基于binary-RPC实现的远程通讯library,支持多种语言,包括c++,java,c#等,还支持flash/flex Jetty 是一个开源的s ...
 - mac平台下面ruby环境搭建
			
一.安装xcode 先安装 [Xcode](http://developer.apple.com/xcode/) 开发工具,它将帮你安装好 Unix 环境需要的开发包 二.安装 RVM curl -L ...
 - Sql server之路 (一)基础学习
			
查询 1.Select * from表名 2.Select 字段1,字段2,from表名 3.Select 字段1,字段2,...from表名 where 字段1 in('内容') 插入 1.inse ...
 - wp8 --退出程序
			
重写OnBackKeyPress事件,设置 e.cancel=true:然后加弹窗代码,为确定按钮订阅事件委托,委托方法里加Application.Current.Terminate();退出方法即可
 - ActiveMQ Exception: java.io.EOFException: Chunk stream does not exist
			
解决办法: 方法1. 去掉延迟功能:<broker xmlns="http://activemq.apache.org/schema/core " brokerName=&q ...
 - 我对序列化(Serializable)的理解
			
转自:http://blog.tianya.cn/blogger/post_show.asp?BlogID=764&PostID=3231409 序列化是把一个对象的状态写入一个字节流的过程. ...
 - POJ 2299 逆序对
			
Crossings Time Limit: 2 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100463 Description I ...
 - Hark的数据结构与算法练习之梳排序
			
算法说明梳排序是交换排序的一种,它其实也是改自冒泡排序,不同之处是冒泡排序的比较步长恒定为1,而梳排序的比较步长是变化的. 步长需要循环以数组长度除以1.3,到最后大于等于1即可. 光说可能比较抽象, ...
 - lr数据库参数化取数:The query result is empty and same is the parameter file问题原因
			
出现这个问题的原因: 是因为我们的查询结果存在中文 如果查询结果没有中文,显示正常 解决办法: 新建一个数据源: 重新再选择这个数据源,再次查询: 说明不是连接字符串的问题或者是mysql驱动的问题 ...