iOS常用宏定义
2016-01-29 12:16
375 查看
1.首次启动判断:
#define First_Launched @"firstLaunch"
2.ios7系统判断:
#define IsIOS7 ([[[UIDevice currentDevice] systemVersion] floatValue] >=7.0 ? YES : NO)
3.判断是否Retina屏、是否IPhone5、是否IPad
#define isRetina ([UIScreen instancesRespondToSelector:
@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960),
[[UIScreen mainScreen] currentMode].size) : NO)
#define iPhone5 ([UIScreen instancesRespondToSelector:
@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136),
[[UIScreen mainScreen] currentMode].size) : NO)
#define isPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
4.加载图片宏:
#define LOADIMAGE(file,type) [UIImage imageWithContentsOfFile:[[NSBundle mainBundle]pathForResource:file ofType:type]]
5.rgb颜色转换(16进制->10进制)
#define UIColorFromRGB(rgbValue) [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 green:((float)((rgbValue & 0xFF00) >> 8))/255.0 blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.0]
6.设置颜色RGB
#define COLOR(R, G, B, A)
[UIColor colorWithRed:R/255.0 green:G/255.0 blue:B/255.0 alpha:A]
7.去除"-(id)performSelector:(SEL)aSelector withObject:(id)object;"的警告
#define SuppressPerformSelectorLeakWarning(Stuff) \
do { \
_Pragma("clang diagnostic push") \
_Pragma("clang diagnostic ignored \"-Warc-performSelector-leaks\"")
\
Stuff; \
_Pragma("clang diagnostic pop") \
} while (0)
2.定义沙盒目录文件的宏
?
3.工具类的宏
?
4.通知Notification相关的宏
?
服务端API接口的宏
?
还有很多其他类型的宏,此处不一一列举
创建一个import所有宏相关的文件Macros.h
?
在xcode项目的pch文件中,导入Macros.h文件
?
#define First_Launched @"firstLaunch"
2.ios7系统判断:
#define IsIOS7 ([[[UIDevice currentDevice] systemVersion] floatValue] >=7.0 ? YES : NO)
3.判断是否Retina屏、是否IPhone5、是否IPad
#define isRetina ([UIScreen instancesRespondToSelector:
@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960),
[[UIScreen mainScreen] currentMode].size) : NO)
#define iPhone5 ([UIScreen instancesRespondToSelector:
@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136),
[[UIScreen mainScreen] currentMode].size) : NO)
#define isPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
4.加载图片宏:
#define LOADIMAGE(file,type) [UIImage imageWithContentsOfFile:[[NSBundle mainBundle]pathForResource:file ofType:type]]
5.rgb颜色转换(16进制->10进制)
#define UIColorFromRGB(rgbValue) [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16))/255.0 green:((float)((rgbValue & 0xFF00) >> 8))/255.0 blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.0]
6.设置颜色RGB
#define COLOR(R, G, B, A)
[UIColor colorWithRed:R/255.0 green:G/255.0 blue:B/255.0 alpha:A]
7.去除"-(id)performSelector:(SEL)aSelector withObject:(id)object;"的警告
#define SuppressPerformSelectorLeakWarning(Stuff) \
do { \
_Pragma("clang diagnostic push") \
_Pragma("clang diagnostic ignored \"-Warc-performSelector-leaks\"")
\
Stuff; \
_Pragma("clang diagnostic pop") \
} while (0)
?
?
?
?
创建一个import所有宏相关的文件Macros.h
?
?
相关文章推荐
- IOS 悬浮评论输入框的实现
- iOS9.1 判断定位是否可用 并定位自己位置
- iOS开发——Masonry 自动布局
- IOS 后台挂起程序 当程序到后台后,继续完成Long-Running Task 任务
- 【iOS开发】---- 手把手教你github托管代码
- iOS 常用技术 收藏
- iOS 获取WIFI SSID及MAC地址
- iOS获取设备信息和获取当前屏幕状态
- 修复iOS模拟器无法启动
- IOS 开发环境,证书和授权文件等详解
- iOS开发之跳转至设置页面小功能
- iOS-点击按钮实现复制功能
- iOS 乱码问题之一
- MBProgressHUD使用介绍
- AFNetworking上传图片
- iOS开发BaseModel的创建和使用(基类)
- iOS加速审核
- iOS 中三种定时器的用法NSTimer、CADisplayLink、GCD
- 手势的3个容易混淆的属性 cancelsTouchesInView/delaysTouchesBegan/delaysTouchesEnded
- iOS 去掉tabbar顶部的横线