宏定义在app开发中的妙用

宏定义在开发中的妙用

- 作为常量:替换URL,数值等
- 作为常用代码
- 等价替换代码,可以当函数使用

使用规则

- 1.常量以小写k开头
- 2.使用下划线连接多个单词(全部大写)

示例

  • 1.替换URL(字符常量)
#define kURL_SAVE_CHAT_HISTORY @"http://115.29.40.117:8787/test/app/user/chat/save"
  • 2.替换常用代码

    一个自定义个RGB颜色

#define kLIGHT_YELLOW [UIColor colorWithRed:253/255.0 green:231/255.0 blue:211/255.0 alpha:1]//导航条的颜色

获得屏幕高度

#define kSCREEN_HEIGHT [[UIScreen mainScreen] bounds].size.height
  • 3.替换常用的多个代码(不要有换行)

    **把一个常用的代码包装起来**
    
#define kALERT(str) [[[UIAlertView alloc]initWithTitle:@"抱歉" message:str delegate:nil cancelButtonTitle:@"我知道了" otherButtonTitles:nil, nil] show];

如何使用上面的代码?

kALERT(@"要显示的数据!");

或者更终极的…配置一大片代码

#define kCONFIG_MJREFRESH     [self.tableView addHeaderWithTarget:self action:@selector(pullDownRefresh)];self.tableView.headerPullToRefreshText = @"下拉刷新";self.tableView.headerReleaseToRefreshText = @"释放立即刷新";self.tableView.headerRefreshingText = @"正在刷新,请稍后...";[self.tableView addFooterWithTarget:self action:@selector(pullUpLoadMore)];self.tableView.footerPullToRefreshText = @"上拉加载更多数据";self.tableView.footerReleaseToRefreshText = @"释放立即加载";self.tableView.footerRefreshingText = @"正在加载,请稍后...";//配置下拉刷新
  • 4.当做函数使用的宏定义

    一个判断性别的简单”函数”

#define kSEXSTRING(sex) [sex intValue]?@"女":@"男"

使用方法

kSEXSTRING(@"1");

总结

使用宏定义的好处

- 1.把所有的常量收集在一起,便于维护
- 2.把常用的代码封装之后减少代码量
- 3.代码可读性更好,更专业

博主更多原文点击这里

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。