IOS经验总结
文章平均质量分 65
TaidyPanda
iOS开发者一枚
展开
-
几条ios软件开发经验总结
1. 在每个页面的入口和出口(一般是viewDidLoad和dealloc)打上日志,可以了解用户的操作流程,并查出页面在关闭时是否销毁了相应的对象。2. 定时器NSTimer 需要在一个新线程中运行,否则UI操作会阻塞定时器。3. 需要为定时器所在的线程设置NSRunLoop,否则定时器可能不会动。4. 如果在线程中设置了NSRunLoop,需要在销毁线程时也将其停止,使用CFRunLo原创 2015-05-21 22:11:25 · 365 阅读 · 0 评论 -
NSPredicate谓词搜索使用小记
iOS中谓词搜索使用小记原创 2015-06-11 12:04:59 · 1092 阅读 · 0 评论 -
ios 判断app程序第一次启动方法
if(![[NSUserDefaults standardUserDefaults] boolForKey:@"firstStart"]){ [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstStart"]; NSLog(@"第一次启动"); }else{原创 2015-05-21 22:12:05 · 365 阅读 · 0 评论 -
scrollview不能滑动的几个解决方法
1.最常见的原因是 contentSize 这个属性,比uiscrollview的frame要小, 无需滚动, 自然就滚动不了。 scrollenabled 这个属性,标识着是否允许滚动,要言设成yes 另外还有一些比较隐蔽的原因. 如果这个scrollView是在IB里面生成的话,还得手动设置它的contentSize,并且不能在initWithNibName:bundle:里面设置,因原创 2015-05-21 22:12:54 · 6189 阅读 · 0 评论 -
ios学习--openURL的使用方法
1.Map http://maps.google.com/maps?q=Shanghai 2.Email mailto://myname@google.com 3.Tel tel://10086 4.Msg sms://10086 openURL能帮助你运行Maps,SMS,Browser,Phone甚至其他的应用程序。这是Iphone开发中我经常需要用到的一段代码,它原创 2015-05-21 22:12:21 · 382 阅读 · 0 评论 -
UINavigationBar的几条使用方法
1: 修改导航控制器背景图片的方式(IOS5以上)1[[UINavigationBar appearance] setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];注: 通过appearance可以设置全局的控件初始化外观.不过在初始化成功以后,有单独样式需求亦可用同样的方法修改.UINavigationBar的标准高度是44,原创 2015-05-21 22:11:29 · 628 阅读 · 0 评论 -
打包IPA流程
在项目开发中,我们常常需要将工程文件打包成.ipa文件,提供给越狱的iphone安装。下面是一种方法:1、首先应该给工程安装好配置文件(这里不再敖述),在ios device的状态下,运行成功。2、选择Product->archive,如下图3、点击Distribute按钮,弹出新窗口,选择Export as Xcode Archive,如下:4、弹出是否保存,点击save。5、选择生成的文件,x原创 2015-05-21 22:12:32 · 402 阅读 · 0 评论 -
NSNotification、delegate和KVO的区别
1.效率肯定是delegate比nsnotification高。2. delegate方法比notification更加直接,最典型的特征是,delegate方法往往需要关注返回值,也就是delegate方法的结果。比如-windowShouldClose:,需要关心返回的是yes还是no。所以delegate方法往往包含should这个很传神的词。也就是好比你做我的delegate,我会问你我想原创 2015-05-21 22:12:29 · 356 阅读 · 0 评论 -
使用imageNamed会导致什么问题
imageNamed 有什么问题? 用imageNamed:对于同一张图得到的是同一个对象,也就是只在内存中加载一次,效率高,但是会导致内存泄露, 无法及时释放,程序结束才释放 解决方案用[UIImage imageWithContentsOfFile:path];根据包中图片路径创建UIImage,是便利构造器(内部有autorelease),能够及时释放原创 2015-05-21 22:12:25 · 462 阅读 · 0 评论 -
2014年09月17日
英文原文:In iOS 7 and later, if you ask for the MAC address of an iOS device, the system returns the value 02:00:00:00:00:00. If you need to identify the device, use the identifierForVendor property of UI原创 2015-05-21 22:12:18 · 363 阅读 · 0 评论 -
GCD简介
Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法。dispatch queue分成以下三种:1)运行在主线程的Main queue,通过dispatch_get_main_queue获取。/*!* @function dispatch_get_main_queue** @abstract* Returns the default queue原创 2015-05-21 22:12:13 · 396 阅读 · 0 评论 -
IOS的3种多线程方式
1.iOS的三种多线程技术 1.NSThread 每个NSThread对象对应一个线程,量级较轻(真正的多线程)2.以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题?NSOperation/NSOperationQueue 面向对象的线程技术?GCD —— Grand Central Dispatch(派发) 是基于C语言的框架原创 2015-05-21 22:12:09 · 444 阅读 · 0 评论 -
2014年09月11日
如何选择AFNetworking版本首先得下载AFNetworking库文件,下载时得首先弄清楚,你将要开发的软件兼容的最低版本是多少。AFNetworking 2.0或者之后的版本需要xcode5.0版本并且只能为IOS6或更高的手机系统上运行,如果开发MAC程序,那么2.0版本只能在MAC OS X 10.8或者更高的版本上运行。AFNetworking 2.0的下载地址https://git原创 2015-05-21 22:12:02 · 375 阅读 · 0 评论 -
KVO模式浅析
最近老翁在项目中多处用到了KVO,深感这种模式的好处。现总结如下:一、概述KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。KVO其实也是“观察者”设计模式的一种应用。我的看法是,这种模式有利于两个类间的解耦合,尤其是对于 业务逻辑与视图控制 这两原创 2015-05-21 22:11:58 · 470 阅读 · 0 评论 -
AFNetWorking使用笔记(转)
转载自:http://blog.sina.com.cn/s/blog_719d537e01017x82.htmlAFNetwork是一个轻量级的网络请求api类库。是以NSURLConnection, NSOperation和其他方法为基础的。下面这个例子是用来处理json请求的: NSURL *url = [NSURL URLWithString:@"https://alpha-api.app.原创 2015-05-21 22:11:51 · 410 阅读 · 0 评论 -
IOS中的懒加载(延时加载)
懒加载,又称为延迟加载。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候不加载资源,只有在运行当需要一些资源时,再去加载这些资源。我们知道iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能会耗尽iOS设备的内存。这些资源例如大量数据,图片,音频等等下面举个例子:1> 定义控件属性,注意:属性必须是strong的(或者retain),调用的时原创 2015-05-21 22:11:42 · 1161 阅读 · 0 评论 -
关于GCD信号量dispatch_semaphore_signal
最近在做一些连接硬件拍照的工作,在iOS设备上控制相机拍照,遇到了一些问题,现记录如下:下面的两段代码主要功能是:创建一个信号量Semaphore,然后创建一个定时器,每隔一段时间查询相机状态.当相机处理完毕之后,发出信号,继续执行以后的操作.整个过程都是在全局队列中处理的.- (NSString*)run:(NSString*)command{// Create and keep HTTP s原创 2016-10-11 18:57:08 · 770 阅读 · 0 评论