ios开发_ios开发 ios12启动页 ios7+对应的尺寸是多少 - CSDN
  • [size=medium] 1. 判断是否是iPad #define IS_IPAD (UI_USER_INTERFACE_IDIOM() == ...2. iOS版本判断 #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_5_1 [navigationController.navigat...
    [size=medium]
    1. 判断是否是iPad
    #define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)

    2. iOS版本判断
    #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_5_1
    [navigationController.navigationBar addSubview:imageView];
    #else
    [navigationController.navigationBar insertSubview:imageView atIndex:0];
    #endif

    3. 自定log 调试用
    #define showLogInfo 1
    #if showLogInfo
    # define DLog(...) NSLog(__VA_ARGS__)
    #else
    # define DLog(...)
    #endif

    4. 各目录路径获取
    [/size]

    // 获取沙盒主目录路径
    NSString *homeDir = NSHomeDirectory();

    // 获取Documents目录路径
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *docDir = [paths objectAtIndex:0];

    // 获取Caches目录路径
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
    NSString *cachesDir = [paths objectAtIndex:0];

    // 获取tmp目录路径
    NSString *tmpDir = NSTemporaryDirectory();
    展开全文
  • 1. 判断是否是iPad  #define IS_IPAD (UI_USER_INTERFACE_IDIOM() == ...2. iOS版本判断  #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_5_1   [navigationController.navigationBar addS
    1. 判断是否是iPad 
    #define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 

    2. iOS版本判断 
    #if __IPHONE_OS_VERSION_MAX_ALLOWED > __IPHONE_5_1 
        [navigationController.navigationBar addSubview:imageView]; 
    #else 
        [navigationController.navigationBar insertSubview:imageView atIndex:0]; 
    #endif 

    3. 自定log 调试用 
    #define showLogInfo 1 
    #if showLogInfo 
    #    define DLog(...) NSLog(__VA_ARGS__) 
    #else 
    #    define DLog(...) 
    #endif 

    4. 各目录路径获取 

    C代码  收藏代码
    1. // 获取沙盒主目录路径    
    2. NSString *homeDir = NSHomeDirectory();    
    3.   
    4. // 获取Documents目录路径    
    5. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);    
    6. NSString *docDir = [paths objectAtIndex:0];    
    7.   
    8. // 获取Caches目录路径    
    9. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);    
    10. NSString *cachesDir = [paths objectAtIndex:0];    
    11.   
    12. // 获取tmp目录路径    
    13. NSString *tmpDir =  NSTemporaryDirectory();  
    展开全文
  • iOS开发常用宏#define

    2014-01-22 10:08:25
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ...
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    #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 CurrentSystemVersion ([[UIDevice currentDevice] systemVersion])  
    #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]
     
     
     
    //use dlog to print while in debug model
    #ifdef DEBUG
    #   define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
    #else
    #   define DLog(...)
    #endif
     
     
    #define isRetina ([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 isPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
     
     
    #if TARGET_OS_IPHONE
    //iPhone Device
    #endif
     
    #if TARGET_IPHONE_SIMULATOR
    //iPhone Simulator
    #endif
     
     
    //ARC
    #if __has_feature(objc_arc)
        //compiling with ARC
    #else
        // compiling without ARC
    #endif
     
     
    //G-C-D
    #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 USER_DEFAULT [NSUserDefaults standardUserDefaults]
    #define ImageNamed(_pointer) [UIImage imageNamed:[UIUtil imageName:_pointer]]
     
     
     
    #pragma mark - common functions
    #define RELEASE_SAFELY(__POINTER) { [__POINTER release]; __POINTER = nil; }
     
     
    #pragma mark - degrees/radian functions
    #define degreesToRadian(x) (M_PI * (x) / 180.0)
    #define radianToDegrees(radian) (radian*180.0)/(M_PI)
     
    #pragma mark - color functions
    #define RGBCOLOR(r,g,b) [UIColor colorWithRed:(r)/255.0f green:(g)/255.0f blue:(b)/255.0f alpha:1]
    #define RGBACOLOR(r,g,b,a) [UIColor colorWithRed:(r)/255.0f green:(g)/255.0f blue:(b)/255.0f alpha:(a)]
    #define ITTDEBUG
    #define ITTLOGLEVEL_INFO     10
    #define ITTLOGLEVEL_WARNING  3
    #define ITTLOGLEVEL_ERROR    1
     
    #ifndef ITTMAXLOGLEVEL
     
    #ifdef DEBUG
        #define ITTMAXLOGLEVEL ITTLOGLEVEL_INFO
    #else
        #define ITTMAXLOGLEVEL ITTLOGLEVEL_ERROR
    #endif
     
    #endif
     
    // The general purpose logger. This ignores logging levels.
    #ifdef ITTDEBUG
      #define ITTDPRINT(xx, ...)  NSLog(@"%s(%d): " xx, __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
    #else
      #define ITTDPRINT(xx, ...)  ((void)0)
    #endif
     
    // Prints the current method's name.
    #define ITTDPRINTMETHODNAME() ITTDPRINT(@"%s", __PRETTY_FUNCTION__)
     
    // Log-level based logging macros.
    #if ITTLOGLEVEL_ERROR <= ITTMAXLOGLEVEL
      #define ITTDERROR(xx, ...)  ITTDPRINT(xx, ##__VA_ARGS__)
    #else
      #define ITTDERROR(xx, ...)  ((void)0)
    #endif
     
    #if ITTLOGLEVEL_WARNING <= ITTMAXLOGLEVEL
      #define ITTDWARNING(xx, ...)  ITTDPRINT(xx, ##__VA_ARGS__)
    #else
      #define ITTDWARNING(xx, ...)  ((void)0)
    #endif
     
    #if ITTLOGLEVEL_INFO <= ITTMAXLOGLEVEL
      #define ITTDINFO(xx, ...)  ITTDPRINT(xx, ##__VA_ARGS__)
    #else
      #define ITTDINFO(xx, ...)  ((void)0)
    #endif
     
    #ifdef ITTDEBUG
      #define ITTDCONDITIONLOG(condition, xx, ...) { if ((condition)) { \
                                                      ITTDPRINT(xx, ##__VA_ARGS__); \
                                                    } \
                                                  } ((void)0)
    #else
      #define ITTDCONDITIONLOG(condition, xx, ...) ((void)0)
    #endif
     
    #define ITTAssert(condition, ...)                                       \
    do {                                                                      \
        if (!(condition)) {                                                     \
            [[NSAssertionHandler currentHandler]                                  \
                handleFailureInFunction:[NSString stringWithUTF8String:__PRETTY_FUNCTION__] \
                                    file:[NSString stringWithUTF8String:__FILE__]  \
                                lineNumber:__LINE__                                  \
                                description:__VA_ARGS__];                             \
        }                                                                       \
    } while(0)
     
     
     
    #define _po(o) DLOG(@"%@", (o))
    #define _pn(o) DLOG(@"%d", (o))
    #define _pf(o) DLOG(@"%f", (o))
    #define _ps(o) DLOG(@"CGSize: {%.0f, %.0f}", (o).width, (o).height)
    #define _pr(o) DLOG(@"NSRect: {{%.0f, %.0f}, {%.0f, %.0f}}", (o).origin.x, (o).origin.x, (o).size.width, (o).size.height)
     
    #define DOBJ(obj)  DLOG(@"%s: %@", #obj, [(obj) description])
     
    #define MARK    NSLog(@"\nMARK: %s, %d", __PRETTY_FUNCTION__, __LINE__)
    来自cocoachina  http://www.cocoachina.com/bbs/read.php?tid=137317

    展开全文
  • iOS常用判断的宏定义

    2016-12-09 17:29:46
    //设备型号 #define IS_IPAD [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad #define IS_IPHONE [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone

    //设备型号

    #define IS_IPAD     [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad

    #define IS_IPHONE   [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone

    #define IS_IPHONE_4 (fabs((double)[[UIScreen mainScreen] bounds].size.height - (double )480) < DBL_EPSILON )

    #define IS_IPHONE_5 (fabs((double)[[UIScreen mainScreen] bounds].size.height - (double )568) < DBL_EPSILON )

    #define IS_IPHONE_6 (fabs((double)[[UIScreen mainScreen] bounds].size.height - (double )667) < DBL_EPSILON )

    #define IS_IPHONE_6_PLUS (fabs((double)[[UIScreen mainScreen] bounds].size.height - (double )960) < DBL_EPSILON )


    //系统版本

    #define IS_IOS_VERSION   floorf([[UIDevice currentDevice].systemVersion floatValue]

    #define IS_IOS_5    floorf([[UIDevice currentDevice].systemVersion floatValue]) ==5.0 ? 1 : 0

    #define IS_IOS_6    floorf([[UIDevice currentDevice].systemVersion floatValue]) ==6.0 ? 1 : 0

    #define IS_IOS_7    floorf([[UIDevice currentDevice].systemVersion floatValue]) ==7.0 ? 1 : 0

    #define IS_IOS_8    floorf([[UIDevice currentDevice].systemVersion floatValue]) ==8.0 ? 1 : 0

    #define IS_IOS_9    floorf([[UIDevice currentDevice].systemVersion floatValue]) ==9.0 ? 1 : 0


    //物理屏幕尺寸

    #define IH_DEVICE_HEIGHT    [[UIScreen mainScreen] bounds].size.height

    #define IH_DEVICE_WIDTH     [[UIScreen mainScreen] bounds].size.width



    //自定义的NSLog

    #ifdef DEBUG

    #define XSLog(FORMAT, ...) fprintf(stderr,"%s:%d\t%s\n",[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

    #define YYLog(FORMAT, ...) fprintf(stderr,"%s:%d\t%s\n",[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);

    #else

    #define XSLog(FORMAT, ...) nil;

    #define YYLog(FORMAT, ...) nil;

    #endif

    展开全文
  • 关于宏定义相信大家一定不会陌生,我们经常使用的都是一些简单的宏定义常量,或者使用宏定义一个方法。但是在项目中会使用到很多你真的理解宏定义的语法吗? 下面来展示一些宏定义的用法: 1.使用宏定义定义一个...
  •  目前移动端开发市场上引导开发者追求技多不压身,一个全栈开发者至少要懂后台服务器、数据库、Android、web、ios开发等。“一超多强”是指开发者先成为一门技术的专家然后掌握了解多门技术,这是一种好的发展趋势...
  • 作为一个开发者应该学会去整理收集开发常用的...iOS开发工具多如牛毛,开发者在编写大段代码时,难免会出现结构或语法错误。所以选择一款功能强劲且实用的编程工具对开发者来说可谓是大有裨益。小编收录和整理了对...
  • 看什么看!点我呀!全栈程序员,免费入门到精通!作者丨开发之家https://www.jianshu.com/p/1fd231cfe54b前言iOS开发语言有哪些?OS开发...
  • ios开发知识汇总

    2018-06-11 09:30:10
    1.技术基础1、为什么说Objective-C是一门动态的语言?这里的动态和静态是相对的,动态的意思是不需要在编译时确定所有的东西,在运行时也可以动态添加变量,属性,方法和类. Objective-C 可以通过Runtime这个运行时机制,...
  • 小结今天我跟你说了 iOS 开发中哪些知识是需要着重学习的,以及怎样将这些知识体系化。在学习知识的道路上,我的建议是求精、求深,基础打牢,以不变应万变。在工作上,则要注重开发效率,避免不必要地重复造轮子,...
  • iOS开发入门教程

    2016-07-22 21:52:18
    iOS开发入门教程,从创建项目到运行项目,包括OC基础,调试,模拟器设置等相关知识。 程序发轻狂,代码阑珊,苹果开发安卓狂!——写给狂热的编程爱好者们 写在前面的话 学习iOS应用程序开发已有一段...
  •  需要iOS视频资料可以加我微信: 1914532832 验证信息请注明:IOS开发  很多新人对IOS开发很迷茫,不知道从何下手?看完本系列,你将会觉得IOS入门其实很简单。要学习IOS开发,当然是先学习Swift语言,特别是小白...
  • 如果你对怎么开始IOS开发都不懂的话,请看点下面的链接,先学习关于IOS开发环境的配置以及Swift语言入门:  IOS开发入门之一——Swift语言基础  本章将教大家创建一个标准的苹果手机应用并让它在手机模拟器上运行...
  • 现在是人是鬼都想着做iOS开发,等你们都挤进来了这个供需平衡了甚至供过于求了,你们就是花那么多精力挤进了一个烧脑费神的普通行业,btw,现在北上广已经呈现出iOS开发近饱和状态果然那句话是真理,中国人总是能够...
  • iOS开发本身不难学,不需要你有很高的智力,只需要你能够坚持下去。只要你心中有信念,坚持下去就会有收获。不管你是学哪一种编程语言,不用怀疑你能不能学会,只要你肯下工夫,坚持下去就一定会成,学不会只有一个...
  • 如果你app都不懂得怎么创建,或者连怎么搭建IOS开发环境Swift语言都还不熟悉,请先看本系列的前两节: IOS开发入门之一——Swift语言基础 IOS开发入门之二——第一个App 需要iOS开发视频资料可以加我微信: ...
  • Demo源码:https://github.com/EmyWong/PersonalUITech前言作为一名iOS开发人员,我觉得第一步是能够基本模仿一个APP,完成别人APP的界面搭建;第二步,是尽量学会转载,学习别人的博客和技术;第三步,是学会原创,...
  • 前言这是iOS开发技巧系列博客的第二篇,本篇主要简单介绍一下如何设置应用程序的icon图标以及修改应用程序名。设置 icon首先我们来看看如何设置App icon图标,设置应用程序的icon图标主要有两种方法:第一种:通过...
  • iOS开发证书管理

    2017-09-07 23:31:30
    总会报一些错误,有些是语法上的错误,老的代码在新的编译环境下不通过,还有的因为因为签名导致的错误,如常见的错误提示:“Failed to create provisioning profile.”,ios的证书管理是ios开发中必须掌握的技能,...
  • 本篇文章内容:主要讲述鄙人最初进行后台接口开发的大致流程。(适合新手看)前言:最近两个月,由于iOS小组暂时没有任务可做,所以经理就给我...联想到周围的同事和朋友,其实不管是做安卓还是iOS开发的Coder,会写接口
1 2 3 4 5 ... 20
收藏数 402,194
精华内容 160,877
关键字:

ios开发