• 热门专题

Android_切换主题或皮肤的实现方式

作者:  发布日期:2015-11-17 20:42:54
Tag标签:皮肤  方式  主题  
  • 1.简介

    使用自定义主题或者皮肤,可以将相关配置(颜色、大小等等)放在一个新的apk压缩文件中,目录结构保持一致,该apk文件放在任意可以访问到的目录即可,类似/system/framework/framework-res.apk,可根据软件的需要动态的加载主题文件。这里只介绍这一种实现方式,别的方式有兴趣的可以自己研究。

    主要实例化AssetManager对象和Resources对象来实现的

     

    AssetManager assetManager = AssetManager.class.newInstance();
    Method addAssetPath = assetManager.getClass().getMethod("addAssetPath", String.class);
    addAssetPath.invoke(assetManager, skinPkgPath);
    
    Resources superRes = context.getResources();
    Resources skinResource = new Resources(assetManager,superRes.getDisplayMetrics(),superRes.getConfiguration());

     

    2.流程图

     

     

    3. 备注

     

    github上就有一个不错的开源项目https://github.com/fengjundev/Android-Skin-Loader,有兴趣的朋友可以研究下源码

     

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规