IOS 常用的宏定义(一)

来源:互联网 发布:中易智联软件多少钱 编辑:程序博客网 时间:2024/04/30 15:59

1.设备的属性

#define isRetina  ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)

#defineiPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)

#defineisPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

#define CurrentSystemVersion ([[UIDevice currentDevice] systemVersion])

#define CurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])  

#define SAFE_RELEASE(x) [x release];x=nil#define IOS_VERSION [[[UIDevice currentDevice] systemVersion] floatValue]



2.GCD

#defineBACK(block) dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), block)
#defineMAIN(block) dispatch_async(dispatch_get_main_queue(),block)

3.ARC

#if __has_feature(objc_arc)
    //compiling with ARC
#else
    // compiling without ARC
#endif

4.判断是模拟器或者真机

#if TARGET_IPHONE_SIMULATOR

    label.text =@"iphoneSimulator" ;

#elif TARGET_OS_IPHONE

    label.text =@"iphoneDevice" ;

#endif


5.控件

#defineBARBUTTON(TITLE, SELECTOR)  [[[UIBarButtonItem alloc] initWithTitle:TITLEstyle:UIBarButtonItemStylePlain  target:self action:SELECTOR] autorelease]

使用方法:

self.navigationItem.rightBarButtonItem =BARBUTTON(@"Action",@selector(action:));


6.function

#define LOADIMAGE(file,ext) [UIImage imageWithContentsOfFile:[[NSBundle mainBundle]pathForResource:file ofType:ext]]

#define VIEWWITHTAG(_OBJECT, _TAG)    [_OBJECT viewWithTag : _TAG]