您的位置:首页 > 移动开发 > IOS开发

IOS开发常用宏定义

2016-05-06 15:56 134 查看
//-------------------获取设备大小-------------------------  

//NavBar高度  

#define NavigationBar_HEIGHT 44  

//获取屏幕 宽度、高度  

#define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)  

#define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)  

  

//-------------------获取设备大小-------------------------  

  

  

//-------------------打印日志-------------------------  

//DEBUG  模式下打印日志,当前行  

#ifdef DEBUG  

#   define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);  

#else  

#   define DLog(...)  

#endif  

  

  

//重写NSLog,Debug模式下打印日志和当前行数  

#if DEBUG  

#define NSLog(FORMAT, ...) fprintf(stderr,"\nfunction:%s line:%d content:%s\n", __FUNCTION__, __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);  

c486
#else  

#define NSLog(FORMAT, ...) nil  

#endif  

  

//DEBUG  模式下打印日志,当前行 并弹出一个警告  

#ifdef DEBUG  

#   define ULog(fmt, ...)  { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:[NSString stringWithFormat:@"%s\n [Line %d] ", __PRETTY_FUNCTION__, __LINE__] message:[NSString stringWithFormat:fmt, ##__VA_ARGS__]  delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil]; [alert show]; }  

#else  

#   define ULog(...)  

#endif  

//ios7系统判断:

#define IsIOS7 ([[[UIDevice currentDevice] systemVersion] floatValue] >=7.0 ? YES : NO)

//判断是否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)
  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: