iOS 好用的宏

部分原创,部分网上

oc 禁用某个方法

- (instancetype) init NS_UNAVAILABLE;

判断nil的宏

//只需要一个参数,如果参数存在程序继续运行,如果参数为空,则程序停止打印日志
 NSParameterAssert(str); 

懒加载

#ifndef PCH_LazyLoading
#define PCH_LazyLoading(_type_, _ivar_) \
- (_type_ *)_ivar_ { \
if (! _##_ivar_) { \
_##_ivar_ = [[_type_ alloc] init]; \
} \
return _##_ivar_; \
}
#endif

#ifndef PCH_LazyLoadingBlock
#define PCH_LazyLoadingBlock(_type_, _ivar_ ,block) \
- (_type_ *)_ivar_{\
void(^initBlock)(_type_ *_ivar_) = ^(_type_ *_ivar_) block;\
if (!_##_ivar_) {\
_type_ *_ivar_ = [[_type_ alloc] init];\
_##_ivar_ = _ivar_;\
initBlock(_ivar_);\
}\
return _##_ivar_;\
}
#endif

debug

#define Debug_BaseViewControllerCreated(str) [[NSClassFromString(str) alloc] init]

// 覆盖系统自带的

#ifdef DEBUG
#define NSLog(FORMAT, ...) fprintf(stderr,"%s:%d\t%s\n",[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);
#else
#define NSLog(FORMAT, ...) nil
#endif

color

#define PCH_CUSTUM_COLOR(y) [UIColor colorWithRed:((float)((y  & 0xFF0000) >> 16))/255.0 green:((float)((y  & 0xFF00) >> 8))/255.0 blue:((float)(y  & 0xFF))/255.0 alpha:1.0]  //custumcolor输入对应的色值

#define PCH_CUSTOM_BLUE_COLOR PCH_CUSTUM_COLOR(0x15B0C9)

frame

#define PCH_SCREEN_HEIGHT  ([UIScreen mainScreen].bounds.size.height)
#define PCH_SCREEN_WIDTH   ([UIScreen mainScreen].bounds.size.width)

#define PCH_SIZE_SCREEN_HEIGHT    (PCH_SCREEN_HEIGHT/667)
#define PCH_SIZE_SCREEN_WIDTH     (PCH_SCREEN_WIDTH/375)

//像素为单位的 不需要自己除以2
#define PCH_BitMap_BY_SIZE(height) (((height)/2)*PCH_SIZE_SCREEN_WIDTH)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 因为要结局swift3.0中引用snapKit的问题,看到一篇介绍Xcode8,swift3变化的文章,觉得很详细...
    uniapp阅读 4,552评论 0 12
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,786评论 25 709
  • 今天早上我自己起床,然后我穿好衣服,今天我穿的衣服和昨天的衣服一模一样。我穿的外套和昨天的不一样了,昨天我的外套后...
    161d968e601f阅读 183评论 0 0
  • 1.你其实没有你想象的那么重要 有人说过:“人会长大三次。第一次是在发现自己不是世界中心的时候。第二次是在发现即使...
    兔牙哈i阅读 555评论 0 0
  • 很想自私的只有自己知道你就好 别人都不知道 只有自己拿着你细细品味 只有自己默默的支持你 那样你才会把我也看成唯一...
    夏己阅读 430评论 0 1