宏定义在开发中的妙用
- 作为常量:替换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.代码可读性更好,更专业
时间: 2024-11-05 14:37:34