方便与IOS开发的宏定义----别人的东西,自己记录一下

来源:互联网 发布:python 入门教程 知乎 编辑:程序博客网 时间:2024/05/18 02:13
#define NavigationBar_HEIGHT 44 #define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)#define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)#define SAFE_RELEASE(x) [x release];x=nil#define IOS_VERSION [[[UIDevice currentDevice] systemVersion] floatValue]#define CurrentSystemVersion ([[UIDevice currentDevice] systemVersion])  #define CurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])  #define BACKGROUND_COLOR [UIColor colorWithRed:242.0/255.0 green:236.0/255.0 blue:231.0/255.0 alpha:1.0]   //use dlog to print while in debug model#ifdef DEBUG#   define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);#else#   define DLog(...)#endif  #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)  #if TARGET_OS_IPHONE//iPhone Device#endif #if TARGET_IPHONE_SIMULATOR//iPhone Simulator#endif  //ARC#if __has_feature(objc_arc)    //compiling with ARC#else    // compiling without ARC#endif  //G-C-D#define BACK(block) dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), block)#define MAIN(block) dispatch_async(dispatch_get_main_queue(),block)  #define USER_DEFAULT [NSUserDefaults standardUserDefaults]#define ImageNamed(_pointer) [UIImage imageNamed:[UIUtil imageName:_pointer]]   #pragma mark - common functions #define RELEASE_SAFELY(__POINTER) { [__POINTER release]; __POINTER = nil; }  #pragma mark - degrees/radian functions #define degreesToRadian(x) (M_PI * (x) / 180.0)#define radianToDegrees(radian) (radian*180.0)/(M_PI) #pragma mark - color functions #define RGBCOLOR(r,g,b) [UIColor colorWithRed:(r)/255.0f green:(g)/255.0f blue:(b)/255.0f alpha:1]#define RGBACOLOR(r,g,b,a) [UIColor colorWithRed:(r)/255.0f green:(g)/255.0f blue:(b)/255.0f alpha:(a)]#define ITTDEBUG#define ITTLOGLEVEL_INFO     10#define ITTLOGLEVEL_WARNING  3#define ITTLOGLEVEL_ERROR    1 #ifndef ITTMAXLOGLEVEL #ifdef DEBUG    #define ITTMAXLOGLEVEL ITTLOGLEVEL_INFO#else    #define ITTMAXLOGLEVEL ITTLOGLEVEL_ERROR#endif #endif // The general purpose logger. This ignores logging levels.#ifdef ITTDEBUG  #define ITTDPRINT(xx, ...)  NSLog(@"%s(%d): " xx, __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)#else  #define ITTDPRINT(xx, ...)  ((void)0)#endif // Prints the current method's name.#define ITTDPRINTMETHODNAME() ITTDPRINT(@"%s", __PRETTY_FUNCTION__) // Log-level based logging macros.#if ITTLOGLEVEL_ERROR <= ITTMAXLOGLEVEL  #define ITTDERROR(xx, ...)  ITTDPRINT(xx, ##__VA_ARGS__)#else  #define ITTDERROR(xx, ...)  ((void)0)#endif #if ITTLOGLEVEL_WARNING <= ITTMAXLOGLEVEL  #define ITTDWARNING(xx, ...)  ITTDPRINT(xx, ##__VA_ARGS__)#else  #define ITTDWARNING(xx, ...)  ((void)0)#endif #if ITTLOGLEVEL_INFO <= ITTMAXLOGLEVEL  #define ITTDINFO(xx, ...)  ITTDPRINT(xx, ##__VA_ARGS__)#else  #define ITTDINFO(xx, ...)  ((void)0)#endif #ifdef ITTDEBUG  #define ITTDCONDITIONLOG(condition, xx, ...) { if ((condition)) { \                                                  ITTDPRINT(xx, ##__VA_ARGS__); \                                                } \                                              } ((void)0)#else  #define ITTDCONDITIONLOG(condition, xx, ...) ((void)0)#endif #define ITTAssert(condition, ...)                                       \do {                                                                      \    if (!(condition)) {                                                     \        [[NSAssertionHandler currentHandler]                                  \            handleFailureInFunction:[NSString stringWithUTF8String:__PRETTY_FUNCTION__] \                                file:[NSString stringWithUTF8String:__FILE__]  \                            lineNumber:__LINE__                                  \                            description:__VA_ARGS__];                             \    }                                                                       \} while(0)   #define _po(o) DLOG(@"%@", (o))#define _pn(o) DLOG(@"%d", (o))#define _pf(o) DLOG(@"%f", (o))#define _ps(o) DLOG(@"CGSize: {%.0f, %.0f}", (o).width, (o).height)#define _pr(o) DLOG(@"NSRect: {{%.0f, %.0f}, {%.0f, %.0f}}", (o).origin.x, (o).origin.x, (o).size.width, (o).size.height) #define DOBJ(obj)  DLOG(@"%s: %@", #obj, [(obj) description]) #define MARK    NSLog(@"\nMARK: %s, %d", __PRETTY_FUNCTION__, __LINE__)

0 0
原创粉丝点击