• iOS开发常用的宏定义


    #define NavigationBar_HEIGHT  44   //导航栏高度

    #define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)  //动态获取物理设备的宽度

    #define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)  //动态获取物理设备的高度

    #define SAFE_RELEASE(x) [x release];x=nil  //安全释放

    #define IOS_VERSION [[[UIDevice currentDevice] systemVersion] floatValue]  //获取当前设备系统版本

    #define CurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])   //获取当前设备语言

    #define BACKGROUND_COLOR [UIColor colorWithRed:242.0/255.0 green:236.0/255.0 blue:231.0/255.0 alpha:1.0]  //背景色

    #define SAFE_DELETE(P) if(P) { [P release], P = nil; }  //安全删除对象

    #define COLOR(R, G, B, A)  [UIColor colorWithRed:R/255.0 green:G/255.0 blue:B/255.0 alpha:A] //带rgba的颜色值

    #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]  //rgb颜色转换(16进制转10进制)

    #define CLEARCOLOR [UIColor clearColor]  //清除背景色

    //警告框内容提示

    #define degreesToRadian(x) (M_PI * (x) / 180.0)   //角度转弧度

    #define radianToDegrees(radian) (radian*180.0)/(M_PI)  //弧度转角度

    //一般的提示信息
    #define mAlertView(title, msg)
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:msg delegate:nil
    cancelButtonTitle:@"OK"
    otherButtonTitles:nil];
    [alert show];

    #define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)

    // GCD
    #define BACK(block) dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), block)
    #define MAIN(block) dispatch_async(dispatch_get_main_queue(),block)

    //----------界面設計相關-------

    #define mNavBarHeight 44
    #define mTabBarHeight 50

    //----------設備系統相關---------
    #define mRetina ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)
    #define mIsiP5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136),[[UIScreen mainScreen] currentMode].size) : NO)
    #define mIsiP6 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(750, 1334),[[UIScreen mainScreen] currentMode].size) : NO)
    #define mIsiP6Plus ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2208),[[UIScreen mainScreen] currentMode].size) : NO)

    #define mIsPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
    #define mIsiphone (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
    #define mIsIOS7OrLater ([mSystemVersion floatValue] >= 7.0 ? YES : NO)
    #define mIsIOS8OrLater ([mSystemVersion floatValue] >= 8.0 ? YES : NO)

    #define mSystemVersion ([[UIDevice currentDevice] systemVersion])
    #define mDeviceOpenUDID ([OpenUDID value])
    #define mDeviceModel ([[UIDevice currentDevice] model])
    #define mDeviceName ([[UIDevice currentDevice] name])
    #define mCurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])
    #define mAPPVersion [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"]
    #define mFirstLaunch mAPPVersion //以系統版本來判斷是否第一次啓動,包括升級後啓動
    #define mFirstRun @"firstRun" //判斷是否第一次運行,升級後啓動不算

  • 相关阅读:
    HDU-4248 A Famous Stone Collector 组合数学 DP
    HDU
    暑期训练1 Gym
    暑期训练1 Gym-102623L Lottery Tickets 模拟 贪心构造
    暑期训练2 Gym
    poj-1011 sticks(搜索题)
    hdu-2553 N皇后问题(搜索题)
    poj-2236 wireless network(并查集)
    poj-1700 crossing river(贪心题)
    poj-3278 catch that cow(搜索题)
  • 原文地址:https://www.cnblogs.com/billy-chou/p/3937070.html
Copyright © 2020-2023  润新知