zoukankan      html  css  js  c++  java
  • iOS开发常用的宏定义

    //获取屏幕 宽度、高度  

    #define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)

    #define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)

     

    //获取屏幕的rect和size

    #define screenRect          ([[UIScreen mainScreen] bounds])

    #define screenSize          ([[UIScreen mainScreen] bounds].size)

     

    **********************************打印日志****************************************

    //打印出控件的fram

    #define LOGFRAME(f)         NSLog(@" x:%f y:%f %f height:%f ",f.origin.x,f.origin.y,f.size.width,f.size.height)

    //DEBUG  模式下打印日志,当前行

    #ifdef DEBUG

    # define DLog(fmt, ...) NSLog((@"[文件名:%s] " "[函数名:%s] " "[行号:%d] " fmt), __FILE__, __FUNCTION__, __LINE__, ##__VA_ARGS__);

    #else

    # define DLog(...);

    #endif

    ----------------------系统----------------------------  

     //获取系统版本  

    #define IOS_VERSION [[[UIDevice currentDevice] systemVersion] floatValue]  

    #define CurrentSystemVersion [[UIDevice currentDevice] systemVersion]  

    ///判断设备的操做系统是不是iOS7,iOS9

    #define IOS7                [[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0

    #define IOS9                [[[UIDevice currentDevice] systemVersion] floatValue] > 9.0

    //获取当前语言  

    #define CurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])

    //判断5,6,6p,ipad

    #define iPhone4             ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)

    #define iPhone5             ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)

    #define iPhone6             ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(750, 1334), [[UIScreen mainScreen] currentMode].size) : NO)

    #define iPhone6p            ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2208), [[UIScreen mainScreen] currentMode].size) : NO)

    #define isPad               (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

    *******************颜色类****************************************

    //带有RGBA的颜色设置

    #define RGBA(r, g, b, a)    [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:a]

    // rgb颜色转换(16进制->10进制)

    #define HexRGB(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]

    // 获取RGB颜色  

    #define RGBA(r,g,b,a) [UIColor colorWithRed:r/255.0f green:g/255.0f blue:b/255.0f alpha:a]  

    #define RGB(r,g,b) RGBA(r,g,b,1.0f)

    //清除背景色  

    #define CLEARCOLOR [UIColor clearColor]

    ***********************其他********************

    //方正黑体简体字体定义  

    #define FONT(F) [UIFont fontWithName:@"FZHTJW--GB1-0" size:F]

    //由角度获取弧度 有弧度获取角度  

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

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

    未完待续吧。。。

  • 相关阅读:
    第07组 Beta冲刺(2/5)
    第07组 Beta冲刺(1/5)
    第07组 Alpha事后诸葛亮
    第07组 Alpha冲刺(6/6)
    【Beta】软件使用说明——致社长
    【Beta】“北航社团帮”发布声明——小程序v2.0与网页端v1.0
    【Beta】“北航社团帮”测试报告——小程序v2.0与网页端v1.0
    [技术博客] 小程序扫码登录网页端原理
    [技术博客] 用户验证码验证机制---redis缓存数据库的使用
    [技术博客] 如何避免在代码中多重render
  • 原文地址:https://www.cnblogs.com/wenqian/p/5395703.html
Copyright © 2011-2022 走看看