常用宏定义
//
// LeooMacroHeader.h
//
// Created by leoo on 16/7/7.
// Copyright © 2016年 Het. All rights reserved.
//
#ifndef LeooMacroHeader_h
#define LeooMacroHeader_h
#ifdef __OBJC__
#endif
//Log
#ifdef DEBUG
#define MLog(...) NSLog(__VA_ARGS__);
#define MLog_METHOD NSLog(@"%s", __func__);
#else
#define MLog(...);
#define MLog_METHOD;
#endif
//系统版本
#define SYSTEM_VERSION_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedSame)
#define SYSTEM_VERSION_GREATER_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedDescending)
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedDescending)
#define IOS8 SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0")
//屏幕适配
#define iPhone4Width 320.0
#define iPhone4Height 480.0
#define iPhone5Width 320.0
#define iPhone5Height 568.0
#define iPhone6Width 375.0
#define iPhone6Height 667.0
#define iPhone6PWidth 414.0
#define iPhone6PHeight 736.0
#define isiPhone4 ([[UIScreen mainScreen] bounds].size.height <568)
#define isiPhone5 ([[UIScreen mainScreen] bounds].size.height == 568)
#define isiPhone6 (([[UIScreen mainScreen] bounds].size.width>320)&&([[UIScreen mainScreen] bounds].size.width<=375))
#define isiPhone6Plus (([[UIScreen mainScreen] bounds].size.width>375)&&([[UIScreen mainScreen] bounds].size.width<=414))
//获取屏幕的物理高度 高度
#define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)
#define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)
//获取设备的中心X Y
#define SCREEN_WIDTH_2 SCREEN_WIDTH/2
#define SCREEN_HEIGHT_2 SCREEN_HEIGHT/2
//常用高度
#define STATUSBARHEIGHT 20.0
#define NAVIBARHEIGHT 44.0
#define TABBARHEIGHT 49.0
#define BottomOfView(view) (view.frame.origin.y+view.frame.size.height)
//Frame基础值
#define iphone5BasicHeight (1/iPhone5Height*(isiPhone4?iPhone5Height:SCREEN_HEIGHT))
#define iphone5BasicWidth (1/iPhone5Width*SCREEN_WIDTH)
#define iPhone6BasicHeight (1/iPhone6Height*(isiPhone6?iPhone6Height:SCREEN_HEIGHT))
#define iPhone6BasicWidth (1/iPhone6Width*SCREEN_WIDTH)
#define SINGLE_LINE_WIDTH (1 / [UIScreen mainScreen].scale)
#define SINGLE_LINE_ADJUST_OFFSET ((1 / [UIScreen mainScreen].scale) / 2)
//安全赋值
#define NULL_NUMBER @"null"
#define SAFE_STRING(str) (![str isKindOfClass: [NSString class]] ? @"" : str)
#define SAFE_NUMBER(value) (![value isKindOfClass: [NSNumber class]] ? @(-1) : value)
//语言类型
#define CURRENT_LANGUAGE_IS_CHINESE ([[[NSLocale preferredLanguages] objectAtIndex:0] isEqualToString:@"zh-Hans"]||[[[NSLocale preferredLanguages] objectAtIndex:0] isEqualToString:@"zh-Hant"])
//UIColor
// rgb颜色转换(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 RGBCOLOR(R, G, B, A) [UIColor colorWithRed:R/255.0 green:G/255.0 blue:B/255.0 alpha:A]
//Math
//角度获取弧度
#define DEGREES_TO_RADIAN(x) (M_PI * (x) / 180.0)
//弧度获取角度
#define RADIAN_TO_DEGREES(radian) (radian*180.0)/(M_PI)
#endif /* LeooMacroHeader_h */