玩转XcodeiOS Developer

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.在系统偏好设置-扩展中打开本插件(如图)

setting.png

3.你可以自己设置一个快捷键(推荐shift + G)

binding.png

Xcode7.0

请使用这个插件 -------> getterMake-Xcode


一些问题的说明

如果您的Xcode版本是 8.0+.

如果您的macOS是10.11,请安装macOS Sierra (version 10.12)

感谢

hackxhj 感谢这位大佬的项目给了我很多灵感来制作这个插件

上一篇下一篇

猜你喜欢

热点阅读