IOS
文章平均质量分 56
orli
天道酬勤.
展开
-
iOS系统版本市场分布情况
直接访问官方网站:https://developer.apple.com/support/app-store/类似效果, 而且会定时更新的原创 2018-04-10 16:44:40 · 3061 阅读 · 0 评论 -
一个苹果证书怎么多次使用(授权Mac开发)——导出p12文件
一个苹果证书怎么多次使用——导出p12文件为什么要导出.p12文件当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)如图:这时候,再点击“+”时,就会发现点击转载 2015-04-07 17:49:16 · 1315 阅读 · 0 评论 -
6/6plus适配的问题
大家都知道6/6plus出来之后你的app在6/6plus设备上运行起来会显得特别粗糙,字体放大,模糊, 键盘变高,其实就是苹果采取了兼容模式,以增大比例来保持app自适应,当然我们必须做适配。接下来我们来讨论下如何适配:1. 其实很简单, 只需要加入6和6plus的启动图, 6之前我们一般都加入960*640和1136*640两张启动图,现在只需要再加入750*1334(iPhone6原创 2015-04-10 16:53:31 · 867 阅读 · 0 评论 -
KVO和KVC的对比理解
KVC 与 KVO 是 Objective C 的关键概念,个人认为必须理解的东西,下面是实例讲解。Key-Value Coding (KVC)KVC,即是指 NSKeyValueCoding,一个非正式的 Protocol,提供一种机制来间接访问对象的属性。KVO 就是基于 KVC 实现的关键技术之一。一个对象拥有某些属性。比如说,一个 Person 对象有一个 name 和一个转载 2015-03-24 11:17:48 · 579 阅读 · 0 评论 -
多线程编程4 - GCD
一、简介在iOS所有实现多线程的方案中,GCD应该是最有魅力的,因为GCD本身是苹果公司为多核的并行运算提出的解决方案。GCD在工作时会自动利用更多的处理器核心,以充分利用更强大的机器。GCD是Grand Central Dispatch的简称,它是基于C语言的。如果使用GCD,完全由系统管理线程,我们不需要编写线程代码。只需定义想要执行的任务,然后添加到适当的调度队列(dispatch转载 2015-03-18 14:52:27 · 401 阅读 · 0 评论 -
多线程编程3 - NSOperationQueue
一、简介一个NSOperation对象可以通过调用start方法来执行任务,默认是同步执行的。也可以将NSOperation添加到一个NSOperationQueue(操作队列)中去执行,而且是异步执行的。创建一个操作队列:[java] view plaincopyNSOperationQueue *queue = [[NSOperationQueue al转载 2015-03-18 14:37:30 · 404 阅读 · 0 评论 -
多线程编程2 - NSOperation
一、NSOperation1.简介NSOperation实例封装了需要执行的操作和执行操作所需的数据,并且能够以并发或非并发的方式执行这个操作。NSOperation本身是抽象基类,因此必须使用它的子类,使用NSOperation子类的方式有2种:1> Foundation框架提供了两个具体子类直接供我们使用:NSInvocationOperation和NSBlockOpera转载 2015-03-18 14:25:48 · 391 阅读 · 0 评论 -
多线程编程1 - NSThread
每个iOS应用程序都有个专门用来更新显示UI界面、处理用户的触摸事件的主线程,因此不能将其他太耗时的操作放在主线程中执行,不然会造成主线程堵塞(出现卡机现象),带来极坏的用户体验。一般的解决方案就是将那些耗时的操作放到另外一个线程中去执行,多线程编程是防止主线程堵塞,增加运行效率的最佳方法iOS支持多个层次的多线程编程,层次越高的抽象程度越高,使用也越方便,也是苹果最推荐使用的方法。下面根据抽转载 2015-03-18 14:13:53 · 428 阅读 · 0 评论 -
XCode6报数组越界错误的问题
今天碰到一个很奇葩的问题, 调试了半天: 错误:“index 0 beyond bounds for empty array”, 意思就是说数据源数组为nil, 所以你调用直接取值自然就报错. 我叙述下我的场景: 1. 在UITaleView中创建cell, 数据源dataArray是存在并且数量为10, 然后我是[dataArray objectAtIndexindexPa原创 2015-03-20 16:22:50 · 1237 阅读 · 0 评论 -
CocoaPods详解之----进阶篇
作者:wangzz原文地址:http://blog.csdn.net/wzzvictory/article/details/19178709转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢!一、Podfile.lock文件上文讲过,在开始使用CocoaPods,执行完pod install之后,会生成一个Podf转载 2015-03-04 15:59:37 · 486 阅读 · 0 评论 -
CocoaPods详解之----制作篇
作者:wangzz原文地址:http://blog.csdn.net/wzzvictory/article/details/20067595转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢!学会使用别人的Pods依赖库以后,你一定对创建自己的依赖库跃跃欲试,今天就来揭开Pods依赖库创建过程的神秘面纱。整个创建过程都转载 2015-03-04 16:02:44 · 709 阅读 · 1 评论 -
CocoaPods详解之----使用篇
作者:wangzz原文地址:http://blog.csdn.net/wzzvictory/article/details/18737437转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢!一、什么是CocoaPods1、为什么需要CocoaPods在进行iOS开发的时候,总免不了使用第三方的开源库,比如SBJs转载 2015-03-04 15:57:32 · 496 阅读 · 0 评论 -
关于UITextField和UITextView的placeholder
1. 大家都知道UITextField支持设置placeholder, 并且可以改变placeholder字体大小和颜色, 参照代码:/* 设置placeholder*/[textField setPlaceholder:@"placeholder in textField"];/* 改变placeholder的颜色 */[textField setValue:[UIColor原创 2015-03-03 17:24:34 · 1252 阅读 · 0 评论 -
UINavigationController滑动返回
最近做了UINavigationController的滑动返回(IOS7及以后系统默认支持的), 主要分成以下几步以及碰到的问题, 我这里做个总结:*.首先说明个普遍碰到的问题网上普遍看到说, 在UINavigationController下自定义leftBarButtonItem会导致滑动失效, 解决方案:http://blog.csdn.net/meegomeego/article原创 2015-02-27 10:40:26 · 1730 阅读 · 0 评论 -
APPLE开发者客服电话
看很多人都会问apple开发者客服电话, 其实在开发者中心就可以找到, 链接是:APPLE TELEPHONE SUPPORT 中国区的电话是:4006 701 855原创 2015-02-28 10:03:07 · 5718 阅读 · 2 评论 -
iOS 开发者证书总结 in-house
iOS 证书分两种类型.第一种为$99美元的,这种账号有个人和公司的区别,公司账号能创建多个子账号,但个人的不能。这种账号可以用来上传app store第二种为¥299美元的,这种账号只能用于企业内部使用,不能用来上传app store .也就是常说的in-house证书(用这种证书打出来的包能在任何iOS设备上运行,不需要苹果的验证、签名)--不要误解了这种账号即能上传app转载 2015-04-13 12:58:21 · 771 阅读 · 0 评论 -
IOS8以上打开定位闪退的问题
今天碰到一个问题, 网上搜了很少搜到答案, 这里普及下: ios8以上在设置-隐私-定位服务下打开相应app的定位服务, 只要一点击, 设置页面(ios)就直接闪退到桌面, 是的不是app闪退, 是iOS设置页面闪退, 找寻原因是在info.plist中的NSLocationWhenInUseUsageDescription字段默认是Boolean类型, 需将它设置成String, 并原创 2015-05-05 09:42:20 · 2286 阅读 · 0 评论 -
SDWebImage缓存图片的机制(转)
SDWebImage是一个很厉害的图片缓存的框架。既ASIHttp+AsyncImage之后,我一直使用AFNetworking集成的UIImageView+AFNetworking.h,但后者对于图片的缓存实际应用的是NSURLCache自带的cache机制。而NSURLCache每次都要把缓存的raw data 再转化为UIImage,就带来了数据处理和内存方面的更多操作。具体的比较在这转载 2015-05-08 10:56:57 · 578 阅读 · 0 评论 -
几种常用的设计模式
针对几种常用的设计模式做个简单总结:1.简单工厂模式 简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式 理解:工厂类中写了所有产品的逻辑, 对客户端简单明了, 对工厂类中揉杂了太多业务逻辑, 扩展性太差。2.工厂模式 工厂模式是我们最常用的实例化对象模式了 理解:在简单工厂模式下, 对工厂类进行解原创 2018-01-16 21:53:13 · 531 阅读 · 0 评论 -
<OnlyBill> 简易记账软件(续)
记账软件正式上架啦! 于2.17号正式上架, 这是一款简单的记账软件,1. 支持多个账单, 每个账单下可以有很多单笔收入或支出记录2. 支出类型有19种, 对应每个种类会有相应的统计(饼图统计)3. 针对每天的收入支出统计, 并且统计账单所有的收入和支出4. 对每天的收入和支出做了折线图的统计.5. 支持账单和记录的增加、删除、修改.6. 背景图的切换.原创 2015-02-25 13:28:30 · 1060 阅读 · 2 评论 -
接口化编程(iOS)
接口化编程, 很多人都知道, 具体它的好处非常明显, 个人理解主要是解耦合, 能把代码模块化出来, 要知道, 代码和代码之间的耦合越高, 到后期自然是越难维护的。多的不说, 直接拿例子说, 就能提现它的好处:背景:比如公司有两个app, 但是代码很多都是类似的, 所以我们把一些公有的代码都抽离出来叫TWBaseLibrary, 那你会问, 碰到那种依赖的怎么办, 对啊!接口化解决啊~~~~原创 2017-01-09 15:08:41 · 850 阅读 · 0 评论 -
手把手教你利用Jenkins持续集成iOS项目
前言众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段。用户们都是很挑剔的。如果一个公司的推广团队好不容易砸了重金推广了一个APP,好不容易有了一些用户,由于一次线上的bug导致一批的用户在使用中纷纷出现闪退bug,轻则,很可能前期推广砸的钱都白费了,重则,口碑不好,未来也提升不起用户量来了。静下心来分析一下问题的原因,无外乎就是质量没有过关就上线了。除去主观的一些因素,转载 2016-09-09 16:34:56 · 2241 阅读 · 0 评论 -
(转载)使用Xcode7的Instruments检测解决iOS内存泄露
作为一名iOS开发攻城狮,在苹果没有出ARC(自动内存管理机制)时,我们几乎有一半的开发时间都耗费在这么管理内存上.后来苹果很人性的出了ARC,虽然在很大程度上,帮助我们开发者节省了精力和时间.但是我们在开发过程中,由于种种原因,还是会出现内存泄露的问题.内存泄露是一个很严重的问题.下面就简单介绍下怎么使用Xcode7自带的Instruments中的Leaks检测我们的程序有没有内存泄露和定位内存转载 2016-08-02 17:05:37 · 384 阅读 · 0 评论 -
手动创建WorkSpace方式的iOS多工程联合编译包含Static Library
1、创建一个空的App Project启动Xcode 点击 File -> New -> Project 选择 Single View Application取名为TestMainApp建立成功后关闭项目留待下一步使用2、创建一个Static Project启动Xcode 点击 File -> New -> Project 选择 Cocoa Touch Static转载 2016-06-30 15:19:50 · 3415 阅读 · 0 评论 -
使用Reveal查看任意App的技巧(Mark!)
使用Reveal查看任意App的技巧Reveal的高级技巧前言Reveal(http://revealapp.com)是一个很强大的iOS View Hierarchy工具,与其他几个功能相近的工具比如PonyDebugger(https://github.com/square/PonyDebugger)和Spark Inspector(http://s转载 2016-04-11 11:21:56 · 784 阅读 · 0 评论 -
去除UISearchBar中的clearButton(输入内容时出现的删除按钮)
场景: 点击searchBar跳转到另一个界面搜索, 当前searchBar只负责显示那这种情况下, [searchBar setText:@"test"]之后, 右边的clearButton就会默认出现. 我想让它消失, 不然后续交互就达不到目的.百度, google, 都没拿到结果. 灵机一动, UITextField不是可以设置clearMode吗?! 那我只要拿到searchBar原创 2016-03-25 12:03:37 · 8031 阅读 · 1 评论 -
iOS UIWebView 修改user-agent
WebView 没有提供设置user-agent 的接口,无论是设置要加载的request,还是在delegate 中设置request,经测试都是无效的。如下:方案一:[objc] view plaincopyNSMutableURLRequest *request = [[NSMutableURLRequest alloc转载 2016-02-16 11:54:28 · 695 阅读 · 0 评论 -
iOS9 crash问题(talkingData)
由于用了talkingData做app操作统计, 我们app集成的是talkingData 2.0.5版本, 上线后, 发现crash统计中, crash率高达10%+, 只要程序一启动就crash(第一次下载的时候), 其中iOS9.1概率为80%以上, 日志为:SIGABRT 00libsystem_kernel.dylib0x0原创 2015-12-04 09:53:24 · 2741 阅读 · 0 评论 -
iOS项目结构/架构小结
回想下, 已经很久没有写博文了, 工作比较忙加上自己比较懒哈哈.今天说下对于iOS项目结构的一些理解和心得吧, 希望可以帮到需要的人. 前言: 现在的主流应用型app都基本采用native+h5的方式去构建, 如果体验要求比较高的采用native, 如果变动很频繁的(比如做活动)当然用h5更方便省心啦. 所以针对这些模式, 采用了响应的管理方式去管理和维护.1. 首先在目原创 2015-11-18 19:14:03 · 894 阅读 · 0 评论 -
app store上传图片显示错误:未能创建 屏幕快照
在iTunes Connect中添加一个app后,添加屏幕快照时,按照要求的尺寸上传照片成功,但是在保存的时候提示“未能创建Screenshots for 4-inch iPhone5 and iPod touch(5th generation)Retina display的屏幕快照”。](图片来自网络)其实就是保存失败, 图片不适合格式。 但排除1.尺寸大小 2.图片格式jp原创 2015-07-03 18:49:02 · 1962 阅读 · 0 评论 -
IOS键盘类型
UIKeyboardTypeDefault:UIKeyboardTypeASCIICapable:UIKeyboardTypeNumbersAndPunctuation:UIKeyboardTypeURL:UIKeyboardTypeNumberPad:转载 2015-06-11 18:53:49 · 957 阅读 · 0 评论 -
ios QQ登录已经安装QQ客户端但仍然提示下载QQ,您没有安装最新版本qq
出现上述问题可能有下面几个原因:URL scheme没有配置完全URL scheme需要配置下面两个:1. “QQ”+腾讯QQ互联应用appId转换成十六进制(不足8位前面补0),例如“QQ05FC5B14"2. "tencent"+腾讯QQ互联应用appId,例如“tencent100424468”appID没有设置在AppDele转载 2015-05-21 10:07:16 · 4640 阅读 · 0 评论 -
IOS画线的问题
很多控件中希望加一条线, 常见横的竖的, 比如在一个页面的header里, cell中, 像tableview那样那样的分割线.所以我总结了几种方式供大家参考: 1. 利用CGContext去画, 举个例子:UIImageView *imageView=[[UIImageView alloc] initWithFrame:self.view.frame]; [self.原创 2015-02-27 11:00:12 · 1161 阅读 · 0 评论 -
TestFlight APP测试(IOS如何让上架前给其他人测试)
大家都知道, 以前ios项目要测试只需要上传到testflightapp.com, 被邀请和授权的设备都可以下载来测试, 但是直到美国时间2015年2月26日, Apple取消了testflightapp.com的域名, 以后测试都必须用TestFlight App(可以从app store下载, 仅支持ios8.0及以上), ipa文件只能提交到itunesconnect中心.原创 2015-02-27 12:59:07 · 16493 阅读 · 4 评论 -
IOS TextField弹出键盘挡住输入框的问题(续)
续上次谈论键盘遮挡解决方案问题, 上次q原创 2014-08-26 10:47:21 · 1124 阅读 · 0 评论 -
UIImageJPEGRepresentation和UIImagePNGRepresentation
在Iphone上有两种读取图片数据的简单方法: UIImageJPEGRepresentation和UIImagePNGRepresentation. UIImageJPEGRepresentation函数需要两个参数:图片的引用和压缩系数.而UIImagePNGRepresentation只需要图片引用作为参数.通过在实际使用过程中,比较发现: UIImagePNGRepresentat转载 2014-08-26 10:11:20 · 529 阅读 · 0 评论 -
ios判断邮箱,手机号码,车牌号是否合法(正则表达)
/*邮箱验证 MODIFIED BY HELENSONG*/ -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPr转载 2014-09-09 10:36:05 · 1218 阅读 · 0 评论 -
ios AlertView弹出框, 慢慢消失
- (void)timerFireMethod:(NSTimer*)theTimer//弹出框{ UIAlertView *promptAlert = (UIAlertView*)[theTimer userInfo]; [promptAlert dismissWithClickedButtonIndex:0 animated:NO]; promptA转载 2014-08-12 14:51:14 · 821 阅读 · 0 评论 -
IOS TextField弹出键盘挡住输入框的问题
最近碰到TextField弹出的键盘会挡住输入框的问题, 这样对输入很有影响, 所以我网上原创 2014-08-19 22:47:57 · 1732 阅读 · 0 评论 -
[iOS] ViewController的生命周期及其加载View的步骤
首先先阐明ViewController的职责:对内管理与之关联的View,对外跟其他ViewController通信和协调。对于与之关联的View,ViewController总是在需要的时候才加载视图,并在不需要的时候卸载视图,所以也同时担当了管理应用资源的责任。理解ViewController的LifeCycle(生命周期),能够有效地管理应用资源。ViewController的初始化转载 2014-06-30 17:13:28 · 908 阅读 · 0 评论