美文网首页
iOS 小功能集锦

iOS 小功能集锦

作者: 安静的抉择 | 来源:发表于2017-06-01 16:43 被阅读2次

    1、主线程刷新

    2、获取工程内的数据(image plist)

    3、判断设备的软件版本

    4、定义屏幕的宽和高

    5、防止锁屏

    6、设置混编

    7、打包安装

    8、注释插件

    9、创建导航栏按钮

    10、设置时间间隔,并添加到runloop当中一直滚动

    11、延迟操作

    12、推出视图同时隐藏控制栏

    13、退出第一响应

    14、关联:一个对象可以保持对另一个对象的引用,并获取那个对象

    15、pch文件使用

    16、证书的制作(环信推送)

    17、国际化

    18、代码块地址

    19、SVN使用

    20、计算文字宽度、高度

    21、删除项目中所有.svn和.git文件

    22、自定义alertView

    23、不同tabbar之间跳转


    1、主线程刷新

    dispatch_async(dispatch_get_main_queue(), ^{

    [_tvContent reloadData]; //数据添加结束后加载表格

    });

    2、获取工程内的数据(image plist)

    NSArray *datas = [NSArray arrayWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"datas" ofType:@“plist"]];

    3、判断设备的软件版本

    #define iPhoneSystemVersion ([UIDevice currentDevice].systemVersion.floatValue)

    4、定义屏幕的宽和高

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

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

    5、防止锁屏

    [[UIApplication sharedApplication] setIdleTimerDisabled:YES];

    6、设置混编

    “ios中如果arc和非arc文件混编,可以在build parses中指定compile flags,如果arc文件设为”-fobjc-arc",非arc文件设为"-fno-objc-arc"”

    7、打包安装

    http://blog.csdn.net/remote_roamer/article/details/18731897

    第一步 product —> archive

    第二步  show in finder

    第三步  显示包内容,拖拽到itunes的应用程序中

    第四步 右键点击iTunes中生成的文件,点击Show in Finder

    第五步 安装

    8、注释插件

    很多时候,为了快速开发,很多的技术文档都是能省则省,这个时候注释就变得异常重要,但是每次都要手动输入规范化的注释,着实也麻烦,但有了VVDocumenter,规范化的注释,主需要输入三个斜线“///”,就OK啦!

    项目地址:https://github.com/onevcat/VVDocumenter-Xcode

    但是问题来了,很多人都安装了,发现根本就用不了,其实你只是少了一个关键的步骤。

    (1)下载插件

    (2)用Xcode打开工具VVDocumenter,编译(Cmd + B)

    (3)退出Xcode,并重启。

    (4)关键的一步,当我们点击Xcode打开后,会弹出一个对话框,这时默认的是Skip Bundle,我们要选择的是另一个Load Bundle。如果你选择了Skip,就不会去加载这个插件,必须Load。

    9、创建导航栏按钮

    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"< Back" style:UIBarButtonItemStyleDone target:self action:@selector(rebackButtonClick:)];

    10、设置时间间隔,并添加到runloop当中一直滚动

    /**

    *  参数1:时间间隔

    *  参数2:self

    *  参数3:时间到了执行的方法

    *  参数4:nil

    *  参数5:NO

    */

    scrollTimer = [NSTimer scheduledTimerWithTimeInterval:9.0 target:self selector:@selector(switchFocusImageItems) userInfo:nil repeats:NO];

    [[NSRunLoop currentRunLoop] addTimer:scrollTimer forMode:NSRunLoopCommonModes];

    11、延迟操作

    //延迟1000000000纳秒 == 1秒

    dispatch_time_t when = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC));

    void (^task)() = ^ {

    // 延迟操作执行的代码

    [self showData];

    NSLog(@"%@", [NSThread currentThread]);

    };

    // 经过多少纳秒,由主队列调度任务异步执行

    dispatch_after(when, dispatch_get_main_queue(), task);

    // 先执行就是异步,后执行就是同步

    NSLog(@"come here");

    12、推出视图同时隐藏控制栏

    view.hidesBottomBarWhenPushed = yes;

    13、退出第一响应

    [textFiled resignFirstResponder];

    14、关联:一个对象可以保持对另一个对象的引用,并获取那个对象

    首先添加#import

    通过objc_setAssociatedObject可以实现实例之间数据传输,更多还有通知,block,代理等多种方式

    NSMutableArray *imageitems = [NSMutableArray arrayWithCapacity:0];

    objc_setAssociatedObject(self, (__bridge const void *)@"LALALALALAL", imageitems, OBJC_ASSOCIATION_RETAIN_NONATOMIC);

    NSArray *imageItemsOther = objc_getAssociatedObject(self, (__bridge const void *)@"LALALALALAL");

    15、pch文件使用

    首先、先把pch上面的开关调为YES

    其次、$(SRCROOT)/项目名称/pch文件名

    16、证书的制作(环信推送)

    首先环信项目注册

    登录开发者中心,制作证书

    {

    先本地钥匙串导出

    选取制作推送证书

    连接钥匙串文件

    下载下来双击

    进入钥匙串管理里面

    点击钥匙导出文件即可

    }

    登录环信管理后台,输入证书名字

    项目里面设置推送证书名字

    17、国际化

    //国际化名字

    #define LCName(key) NSLocalizedString(key, @"Localizable")

    18、代码块地址

    ~/Library/Developer/Xcode/UserData/CodeSnippets

    19、SVN使用

    http://blog.csdn.net/kangli_1990/article/details/51444790

    .a文件上传设置:

    首先打开软件左上角 CornerStone-Preferences-SubVersion

    第一个地方把对号去掉,第二个地方把.a那个删除,然后save。

    然后把你的.a文件放到本地的相应文件夹下,

    但是 CornerStone(我的是v2.7.10 版本的) 里相应文件夹下看不到带问号的.a文件的话,点击上边 View-Show Ignored  Items

    到这里就ok了,选中你的静态库 点击底部Add 问号会变成A,然后就可以提交了。

    20、计算文字宽度、高度

    CGSize titleSize = [_titleLabel.text sizeWithAttributes:@{NSFontAttributeName : _titleLabel.font}];

    21、删除项目中所有.svn和.git文件

    cd到该文件夹

    //删除文件夹下的所有 .svn 文件

    find . -name ".svn" | xargs rm -Rf

    //删除文件夹下的所有 .git 文件

    find . -name ".git" | xargs rm -Rf

    22、自定义alertView

    [[UIApplication sharedApplication].keyWindow addSubview:self.bigMaskBGView];

    23、不同tabbar之间跳转

    不同tabbar之间跳转,同事回到根视图并推出控制器

    [self.tabBarController setSelectedIndex:2];

    UINavigationController *nav = self.tabBarController.viewControllers[2];

    [nav pushViewController:consultionCtl animated:YES];

    [self.navigationController popToRootViewControllerAnimated:NO];

    相关文章

      网友评论

          本文标题:iOS 小功能集锦

          本文链接:https://www.haomeiwen.com/subject/wheefxtx.html