Latest 1.0.3
Homepage https://github.com/pozi119/VOThemeManager
License GPL V3.0
Platforms ios 7.0
Dependencies YYCache
Authors

VOThemeManager(主题管理器)

License Apache 
CocoaPods 
CocoaPods 
Support 
Build Status

更新说明

  • 一些细节调整

安装

  • CocoaPods导入(目前使用YYCache缓存主题数据,会自动导入YYCache):
    pod 'VOThemeManager'
  • 手动导入:
    • VOThemeManager文件夹内所有源码拽入项目
    • 导入YYCache

数据说明

主题数据使用YYCache存储,不同主题所存放的文件夹不同.主题值的

themeAppliers 应用主题数据的方法, themeObjs当前要应用主题的对象,它们都是 NSMapTable对象, 在被释放后会自动从NSMapTable中删除
themeAppliers的key是 主键 , value为block对象.
themeObjs的key是 主键 , value为某个对象,通常为某种视图对象

使用

1.新增/修改主题

        [VOThemeManager setData:processedDic forTheme:@"test"];

注:新增主题之后不会自动使用新增的主题.

2.加载完主题数据后,应用指定的主题. 例如:

      VOThemeManager.currentTheme = @"test";  /* 设置为test主题 */
      VOThemeManager.currentTheme = nil;      /* 不使用主题 */

3.添加要使用的主题对象. 例如:

    [VOThemeManager setThemeObject:self.testButton  /* 主题对象 */
    forKey:@"btn1_bgColor"  /* 主键,用于关联主题值,主题对象,应用方式,默认值 */
    defaultBlock:^id(UIButton *button) { /* 获取默认值,不使用主题时将重设为此值 */
        return button.backgroundColor;   
    } 
    applier:^(UIButton *button, UIColor *color) { /* 应用主题的方式 */
        button.backgroundColor = color;  
    }];

Latest podspec

{
    "name": "VOThemeManager",
    "version": "1.0.3",
    "summary": "A Theme Manager.",
    "description": "** A Theme Manager **",
    "homepage": "https://github.com/pozi119/VOThemeManager",
    "license": "GPL V3.0",
    "authors": {
        "pozi119": "[email protected]"
    },
    "platforms": {
        "ios": "7.0"
    },
    "source": {
        "git": "https://github.com/pozi119/VOThemeManager.git",
        "tag": "1.0.3"
    },
    "source_files": "VOThemeManager/*.{h,m}",
    "dependencies": {
        "YYCache": []
    }
}

Pin It on Pinterest

Share This