Theme与Style源码结构浅析

追根溯源Theme、Style等根源

假设app的主题


    
    

继承了Theme.AppCompat.Light.DarkActionBar这个style,这玩意又在framework的support v7包下res的themes.xml文件中,一层一层进入,最后发现追踪下去到了该包下的themes_base.xml中;代码如下


接近400多个item属性,这也就是我们Android关于Theme的开山鼻祖了,在我们自定义时其实来这看比去API查还方便呢,有需求来这里搞就行;

Theme、Style加载时机及加载源码浅析

对于Theme有两种方式来使用,具体如下

  • 在AndroidManifest.xml中或者节点设置android:theme属性;

  • 在Java代码中调用setTheme()方法设置Activity的Theme(须在setContentView()前设置;

参考

工匠若水

你可能感兴趣的:(Theme与Style源码结构浅析)