Xcode懒加载生成插件AMEGetterMaker
2017-09-02 本文已影响132人
ame017
支持Xcode8.0 无需resign Xcode
introduce.png如果本插件给你提供了便利 欢迎在github上给我一个star
项目链接 AMEGetterMaker github
关于本扩展
在写代码的时候,您可能会经常用到懒加载.
不幸的是,苹果并没有提供快速生成懒加载的方法.
安装这个扩展将会解决这个问题.
例如:
//无视xib
@property (weak, nonatomic) IBOutlet xibSubView *subView;
//无视注释
@property (nonatomic, strong) UIView * view1;
/**
多行注释也会过滤
*/
@property (nonatomic, strong) UIView * view2;
//assign属性会被过滤
@property (nonatomic, assign) BOOL hahaha;
@property (nonatomic, copy) NSString * sting;
↓↓↓
- (UIView *)view1{
if(!_view1){
_view1 = ({
UIView * object = [[UIView alloc]init];
object;
});
}
return _view1;
}
- (UIView *)view2{
if(!_view2){
_view2 = ({
UIView * object = [[UIView alloc]init];
object;
});
}
return _view2;
}
- (NSString *)sting{
if(!_sting){
_sting = ({
NSString * object = [[NSString alloc]init];
object;
});
}
return _sting;
}
objc-1.gif
objc-2.gif
在swift中使用
目前支持将var转换成lazy var.
例如:
var button : UIButton!
var button1 : UIButton = UIButton()
var button2 = UIButton()
↓↓↓
lazy var button : UIButton = {
let object = UIButton()
return object
}()
lazy var button1 : UIButton = {
let object = UIButton()
return object
}()
lazy var button2 : UIButton = {
let object = UIButton()
return object
}()
swift-1.gif
swift-2.gif
安装方法
Xcode8.0+
1.下载本应用
AMEGetterMaker github
2.在系统偏好设置-扩展中打开本插件(如图)
3.你可以自己设置一个快捷键(推荐shift + G)
binding.pngXcode7.0
请使用这个插件 -------> getterMake-Xcode
一些问题的说明
如果您的Xcode版本是 8.0+.
如果您的macOS是10.11,请安装macOS Sierra (version 10.12)
感谢
hackxhj 感谢这位大佬的项目给了我很多灵感来制作这个插件