// iOS中宏的名字都是大写字母,单词间用下划线分隔,宏方法的参数名都是以下划线开头

// 宏常量
#define NavigationBar_HEIGHT 44
#define StatusBar_HEIGHT 20
#define Margin10 10
#define TabBarIcon 30
#define TabBar_HEIGHT 49
//---------------------------屏幕适配---------------------------------
#define SCREEN_WIDTH  ([UIScreen mainScreen].bounds.size.width)
#define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)
#define isIphone6p (SCREEN_HEIGHT == 736)
#define isIphone6 (SCREEN_HEIGHT == 667)
#define isIphone5 (SCREEN_HEIGHT == 568)
#define isIphone4 (SCREEN_HEIGHT == 480)
#define SYSTEM_VERSION ([[[UIDevice currentDevice] systemVersion] floatValue])//---------------------------宏变量---------------------------------#define WeakSelf  __weak typeof(self) weakSelf = self;//---------------------------宏方法---------------------------------
#define RGB(_r, _g, _b) [UIColor colorWithRed:(_r)/255.0 green:(_g)/255.0 blue:(_b)/255.0 alpha:1]#define random(r, g, b, a) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:(a)/255.0]#define RandomColor random(arc4random_uniform(256), arc4random_uniform(256), arc4random_uniform(256), arc4random_uniform(256))// 角度转弧度
#define angle2Radian(angle) ((angle) / 180.0 * M_PI)
// 弧度转角度
#define radian2Angle(radian) ((radian) / M_PI * 180.0)#define FONT(_size) [UIFont fontWithName:@"FZHTJW--GB1-0" size:_size]#define imageNamed(_name) [UIImage imageNamed:[NSString stringWithFormat:@"%@", _name]]
//---------------------------宏方法---------------------------------#define viewWithTag(_superView, _tag) [_superViewviewWithTag : (_tag)]
//判断是否为iPhone
#define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
//判断是否为iPad
#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
//判断是否为ipod
#define IS_IPOD ([[[UIDevice currentDevice] model] isEqualToString:@"iPod touch"])
// 判断是否为iPhone5
#define IS_IPHONE5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)
// 判断是否retain屏
#define IS_RETINA ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)// 宏判断
#ifdef DEBUG
#   define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
#else
#   define DLog(...)
#endif#ifdef DEBUG
#define Func NSLog((@"%s - %d "), __PRETTY_FUNCTION__, __LINE__);
#else
#define NSLog(...);
#endif//---------------------------代码片段---------------------------------
// 单例
#define SINGLETON(classname) \
\
static classname *shared##classname = nil; \
\
+ (classname *)shared##classname \
{ \
@synchronized(self) \
{ \
if (shared##classname == nil) \
{ \
shared##classname = [[self alloc] init]; \
} \
} \
\
return shared##classname; \
} \
\
+ (id)allocWithZone:(NSZone *)zone \
{ \
@synchronized(self) \
{ \
if (shared##classname == nil) \
{ \
shared##classname = [super allocWithZone:zone]; \
return shared##classname; \
} \
} \
\
return nil; \
} \
\
- (id)copyWithZone:(NSZone *)zone \
{ \
return self; \
}

常用类扩展

UIColor + HEX

iOS App常用的宏相关推荐

  1. 4.01~ios开发常用的宏

    原文:http://www.cocoachina.com/bbs/read.php?tid=137317&page=1 收集起来,丢到一个头文件中,这样开发起来就快多啦!我先分享一些,大家可以 ...

  2. iOS App 常用的分类

    UIViewExt NSDate+Utilies UIColor+Extension NSString+MD5 HexColors

  3. ios 关于常用的一些第三方框架的介绍

    本文转载自:http://blog.csdn.net/xiaoyuertongxue/article/details/46982879 图像:  1.图片浏览控件MWPhotoBrowser 实现了一 ...

  4. iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角)--(转)

    图像:  1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存.可对图片进行缩放等操作.  ...

  5. (转)iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角)

    图像: 1.图片浏览控件MWPhotoBrowser  实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存.可对图片进行缩放等操作. ...

  6. iOS开发-常用第三方开源框架

    图片浏览控件MWPhotoBrowser  实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存.可对图片进行缩放等操作. 下载:htt ...

  7. iOS开发 常用第三方开源框架

    iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角) 2015-04-05 15:25 2482人阅读 评论(1) 收藏 举报 开源框架 图像: 1.图片浏览控件MWPhotoBrowse ...

  8. iOS开发 常用的第三方框架

    图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存.可对图片进行缩放等操作. 下 ...

  9. iOS App 连接外设的几种方式

    原创作者: Max_Marry 文章地址: http://www.jianshu.com/p/852bf92c5c92 随着近年来车联网和物联网的兴起,智能家居和智能硬件的逐步火热,越来越多的 App ...

  10. iOS APP提交上架最新流程

    iOS APP提交上架最新流程 反复提交的过程中对上架流程熟悉了好多,写篇帖子送给同为菜鸟的你,如果里面有很菜的东西,大牛请自动忽略,毕竟这也是还为菜鸟的我的备忘录呢! 首先得描述一下各个证书的定位, ...

最新文章

  1. 机器学习要警惕的4个常见陷阱!
  2. java拦截到登陆界面,JavaWeb 使用Filter实现自动登录
  3. JMeter学习笔记--JMeter监听器
  4. contourArea函数
  5. 电子计算机工程学,计算机工程
  6. Go 语言 cannot find module providing package github.com/
  7. java webservice https_WebService的HTTPS访问——解决PKIX错误 | 字痕随行
  8. .Net中XML,JSON的几种处理方式
  9. py文件转exe时包含paramiko模块出错解决方法
  10. sql-C#-类型对应
  11. 动画 自制弹框上滑+渐显效果
  12. 如何拆计算机主机箱,一种方便拆卸的计算机主机箱的制作方法
  13. 又一主播逃税被罚!快手主播“驴嫂平荣”被追缴并罚款6200.3万元
  14. DB2数据库对现有表格字段修改
  15. What's New in Qt 5.5 5.4,以及5.5 所有module
  16. 百度大脑技术支持慧译视频字幕系统,为听障学生带来“看得见的声音”
  17. 定义函数和更多形式(基础篇)
  18. MQTT QOS Retained Message
  19. Logstash 时区问题
  20. 诊断CAPL自动化(2)—— 封装了诊断发送的通用CAPL函数库

热门文章

  1. 头歌Educoder——大数据Hadoop开发环境搭建
  2. RK3128 Linux 源代码,rk3128开发板linux开发使用指南(35页)-原创力文档
  3. python tts库_python 使用百度tts 库合成语音
  4. SVN 删除已提交的无用文件方法
  5. 主流强化学习算法论文综述:DQN、DDPG、TRPO、A3C、PPO、SAC、TD3
  6. FX5 C的编程语言,三菱FX5-C32EX/D手册FX5-C32EX/D编程手册 - 广州凌控
  7. Effective Modern C++42招独家技巧助你改善C++11和C++14的高效用法笔记
  8. 聚类:Python遗传算法
  9. CCNA 中文教材 (pdf)
  10. freeMark模板导出word