前言
用TABAnimated的小伙伴可能需要使用预处理回调
进行调整自己的骨架属性。
现在可以配合Xcode插件InjectionIII
实现实时预览的效果,大幅提高使用效率。
需要升级版本2.4.5
预处理回调是什么?
_tableView.tabAnimated.adjustBlock = ^(TABComponentManager * _Nonnull manager) {
manager.animation(1).down(3).height(12);
manager.animation(2).height(12).reducedWidth(70);
manager.animation(3).down(-5).height(12).radius(0.).reducedWidth(-20);
};
预处理回调
可以随意调整骨架的所有参数,使用频率非常高。
但是如果开发者频繁地编译运行,再进到固定页面查看效果,这样效率非常低。
InjectionIII是什么?
在开发过程中开发者修改了某个文件,实时保存之后,InjectionIII监听到这个文件,用Runtime将你修改的内容实时编译、链接、运行。
TABAnimated+InjectionIII效果
使用步骤
1. 下载InjectionIII插件
去AppStore下载InjectionIII,启动
2. 工程与InjectionIII插件绑定
3. 如果你是懒加载形式初始化控件(不是请忽略)
将下面代码嵌入对应的viewController中
- (void)injected {
[_tableView removeFromSuperview];
_tableView = nil;
[self viewDidLoad];
}
不是懒加载不需要嵌入代码的原因:
骨架屏内部帮你自动链接了viewDidLoad函数的加载,由于无法统一定位_tableView
在viewController中的地址,无法自动化remove并释放掉。
4. 编辑后,command+s保存,即可实时编译
如果修改的是骨架屏预处理回调的代码,就可以实时看到骨架屏效果,demo所有测试用例都接入了该效果。
其他说明
- 骨架屏TABAnimated需要升级才可以完美对接InjectionIII插件。
- 你可以实时查看任何代码的修改效果,并不局限于TABAnimated。
- InjectionIII不支持真机
- 如果你无法实时预览,请移步InjectionIII地址