iOS_常用宏定义汇总

原创 2015年11月17日 17:19:43

#pragma mark ===============常用的宏定义================

#define kScreenHeight [[UIScreen mainScreen] bounds].size.height

#define kScreenWidth [[UIScreen mainScreen] bounds].size.width

#define kStateBarHeight 20

#define kMainHeight (ScreenHeight - StateBarHeight)

#define kMainWidth ScreenWidth

//是否为retina

#define isRetina ([UIScreen instancesRespondToSelector:

@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), 

[[UIScreen mainScreen] currentMode].size) : NO)

//是否为7.0系统

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

//RGB色值

#define BACKGROUND_CORLOR  [UIColor colorWithRed:222.0/255 green:222.0/255 blue:222.0/255 alpha:1]

//16进制色值

#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] 

//保存本地

#define kUserDefault [NSUserDefaults standardUserDefaults]

#define kApplication [UIApplication sharedApplication]

#define kDataEnv [DataEnvironment sharedDataEnvironment]

#define kDegreesToRadian(x) (M_PI * (x) / 180.0)

//弧度​

#define kRadianToDegrees(radian) (radian*180.0)/(M_PI)

//根据名称加载有缓存图片

#define kImageNamed(name) [UIImage imageNamed:name]

//判断系统的当前版本。

#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)

#pragma mark ===============不常用的宏定义================

#define kSystemError @"系统繁忙,请稍后再试!"

//获取系统目录

#define kGetDirectory(NSSearchPathDirectory) [NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory, NSUserDomainMask, YES)lastObject]

//获取NSFILEMANAGER对象

#define kFileManager [NSFileManager defaultManager]

//获取程序代理 

#define kAppdelegate        ((AppDelegate *)[[UIApplication sharedApplication] delegate])

// 获取任意WINDOW对象 

#define kWindow             [[[UIApplication sharedApplication] windows] lastObject]

//获取KEYWINDOW对象

#define kKeyWindow          [[UIApplication sharedApplication] keyWindow]

//获取USERDEFAULTS对象

#define kNotificactionCenter [NSNotificationCenter defaultCenter]

// 获取当前控制器的navigationBar

#define kNavigationBar      [[self navigationController] navigationBar]

//简单提示框

#define kAlert(title, msg)  [[[UIAlertView alloc] initWithTitle:title message:msg delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil]show]

-----------------------------------加载图片-----------------------------------

//根据名称加载无缓存图片

#define kNoCacheImagewithName(name, ext) [UIImage imageWithContentsOfFile:[[NSBundle mainBundle]pathForResource:name ofType:ext]]

// 根据路径加载无缓存图片

#define kNoCacheImagewithPath(path) [UIImage imageWithContentsOfFile:path]

-----------------------------------视图-----------------------------------

// 根据TAG获取视图

#define kViewWithTag(PARENTVIEW, TAG, CLASS) ((CLASS *)[PARENTVIEW viewWithTag:TAG])

// 加载NIB文件 

#define kLOADNIBWITHNAME(CLASS, OWNER) [[[NSBundle mainBundle] loadNibNamed:CLASS owner:OWNER options:nil] lastObject]

// 异步 

#define kGCDAsync(block) dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), block)

// 同步 

#define kGCDMain(block) dispatch_async(dispatch_get_main_queue(),block)

-----------------------------------界面尺寸--------------------------------------

 //导航栏高度 

#define kNavigationBarHeight 44

// 工具栏高度 

#define kTabBarHeight        49

// 是否IPad 

#define kIsIpad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

// 是否IPhone 

#define kIsIphone (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)

// 获取系统信息

#define kSystemVersion   [[UIDevice currentDevice] systemVersion]

// 获取当前语言环境 

#define kCurrentLanguage [[NSLocale preferredLanguages] objectAtIndex:0]

// 获取当前APP版本 

#define kAppVersion      [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"]

//调试相关

#ifdef DEBUG

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

#else

#define XLOG(...);

#endif


版权声明:本文为博主原创文章,未经博主允许不得转载。

GitHub 上大概600个开源 iOS 项目的分类和介绍,对于你挑选和使用开源项目应该有帮助

http://www.open-open.com/lib/view/open1387098154281.html GitHub 上大概600个开源 iOS 项目的分类和介绍,对于你挑选和使用开源项目...
  • u010828718
  • u010828718
  • 2015年06月12日 17:09
  • 1057

【总结】- (C&OC)常用命名规则&命名规范汇总

C与OC常用命名规则及规范汇总
  • whamazens
  • whamazens
  • 2015年03月07日 00:54
  • 1634

80x86汇编语言编程:宏指令

用 80x86 汇编语言编写程序时,可以使用微软推出的软件 MASM.EXE 来进行编译。这个软件的名称,第一个字母是“M”,它代表了“宏汇编”的意思。使用这个编译软件,就允许我们自己编写“宏指令”了...
  • baidu_33836580
  • baidu_33836580
  • 2016年01月25日 12:01
  • 1338

ios - A-常用宏定义

  • 2014年10月24日 10:10
  • 9KB
  • 下载

iOS中常用的宏定义总结

  • 2015年12月08日 14:38
  • 61KB
  • 下载

iOS常用宏定义framework

  • 2014年02月20日 17:09
  • 9KB
  • 下载

ios开发之不能抛弃的常用宏定义

iOS常用宏定义
  • yq910902
  • yq910902
  • 2015年12月21日 16:46
  • 857

iOS --- 总结Objective-C中常用的宏定义(持续更新中)

将iOS开发中常用的宏定义整理如下,仅包含Objective-C。 而对于Swift,不能使用宏,则可以定义全局函数或者extension。请参考博客iOS — 总结Swift中常用的全局函数和ex...
  • icetime17
  • icetime17
  • 2015年12月20日 19:37
  • 2657

iOS常用宏定义总结 --Objective-C

iOS常用宏定义总结 1. 重写DEBUG模式下的NSLog 2. APP屏幕大小相关 3. GCD -- 多线程 dispatch 4. catch缓存文件夹和Documents文件夹 5. 图...
  • u012988591
  • u012988591
  • 2016年11月18日 16:05
  • 216

iOS开发_常用的宏定义

在这里给大家分享一些 ios开发中常用的宏定义,喜欢的小伙伴可以直接在项目中使用。  目录  1.获取屏幕宽度与高度  2.获取通知中心  3.设置随机颜色  ...
  • qq_32506555
  • qq_32506555
  • 2017年02月13日 12:57
  • 67
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS_常用宏定义汇总
举报原因:
原因补充:

(最多只允许输入30个字)