随笔分类 -  IOS开发问题积累

摘要:一、NSConditionLock定义了一个可以指定条件的互斥锁,用于线程之间的互斥与同步。 这里的条件并不是bool表达式中的条件,而是一个特定的int值。二、NSConditionLock的API NSConditionLock实现了NSLocking协议,有lock和unlock方法。 ... 阅读全文
posted @ 2015-07-24 15:01 兜兜有糖的博客 阅读(2426) 评论(0) 推荐(0) 编辑
摘要:一、NSCondition是对条件变量和互斥量的一个封装,用于线程之间的同步。 其中的互斥量用于保护对条件变量的修改,条件变量变化以信号量的方式通知其它线程实现线程之间的同步。 二、NSCondition的API NSCondition实现了NSLocking协议,这个协议定义了lock和un... 阅读全文
posted @ 2015-07-24 11:32 兜兜有糖的博客 阅读(1505) 评论(0) 推荐(0) 编辑
摘要:一、ARC相对MRC来说,减轻了程序员的大部分内存管理工作,使用ARC的时候也需要十分清除内存管理的原理,不然可能带来一些很难调试的问题。下面是ARC下面需要注意的一些问题 1)对象互相引用,形成引用循环。引用循环是基于引用计数无法避免的问题,因为Objetive-C实质上还是一种编译时期的内存管... 阅读全文
posted @ 2015-06-04 17:11 兜兜有糖的博客 阅读(597) 评论(0) 推荐(0) 编辑
摘要:initialize执行时机 在向一个类执行实例方法或者类方法(除了initialize和load方法之外)的时候,触发initialize方法,因此如果一个类你没有使用的时候,是不会执行的。initialize的执行顺序和次数 initialize的执行顺序和普通方法一样遵从方法转发的... 阅读全文
posted @ 2015-05-26 13:51 兜兜有糖的博客 阅读(243) 评论(0) 推荐(0) 编辑
摘要:load方法的执行时机 Objetive-C的runtime会在一个类的所有方法加载到内存中时调用这个类的+load() 方法,因为每个类的方法只是加载一次,所以每个+load()方法只调用一次。 加载一个类的方法会在一个进程启动开始的时候,这个时候进程的业务代码没有还没有开始执行。 对于... 阅读全文
posted @ 2015-05-26 13:25 兜兜有糖的博客 阅读(370) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2015-04-02 11:57 兜兜有糖的博客 阅读(285) 评论(0) 推荐(0) 编辑
摘要:需求:导出Talking Ben app的头文件实施: 1)准备材料: 越狱IOS设备一部,并安装Talking Ben游戏 IOS设备上安装open SSH IOS设备的/usr/bin 中安装有clutch,该文件从github上可以下载到 ... 阅读全文
posted @ 2015-04-01 19:47 兜兜有糖的博客 阅读(287) 评论(0) 推荐(0) 编辑
摘要:对字典和数组进行下列操作时会产生crash:对于字典来说:查询时,key=nil 或者 key=null 时都能正常运行插入时,,key=nil 或者 key=null 都会crash对于数组来说index越界会crash添加对象为nil时会crash NSDictionary *dic = @{@... 阅读全文
posted @ 2015-04-01 19:16 兜兜有糖的博客 阅读(1234) 评论(0) 推荐(0) 编辑
摘要:1、== 用于比较两个对象的地址是否相同 1)需要注意的是相同的短字符串,一定大小整数(nsnumber),Objetive-C 底层会做cache,两个对象,指向同一个地址。 例如: NSString *str1 = @"hello"; NSString *str2 = @"hello"... 阅读全文
posted @ 2015-04-01 19:08 兜兜有糖的博客 阅读(172) 评论(0) 推荐(0) 编辑
摘要:一般在ARC管理的方式之下,很难出现对象被过度释放的问题,下面是我将遇到的一个crash。* thread #1: tid = 0x31d1db, 0x0000000102e5e00b libobjc.A.dylib`objc_msgSend + 11, queue = 'com.apple.mai... 阅读全文
posted @ 2014-12-27 00:37 兜兜有糖的博客 阅读(2929) 评论(0) 推荐(0) 编辑
摘要:需求分析: 1、类似网易新闻客户端页面滚动组件、菜单栏对应菜单项一直居中 2、点击菜单栏可以切换到对应的page 3、滑动页面可以自动切换相应的菜单、并且对应的菜单栏居中显示 4、初始化时可以自定义菜单项 5、菜单内容、页面内容自定义设计实现: 1、菜单和页面内容分别设计为两个横向滚动的... 阅读全文
posted @ 2014-12-24 21:41 兜兜有糖的博客 阅读(3446) 评论(8) 推荐(1) 编辑
摘要:一、需求分析 1、可横向循环滚动新闻图片 2、滚动到对应图片时显示新闻标题 3、每张新闻图片可点击 4、有pageControl提示 5、具有控件的扩展能力二、设计实现 1、显示图片使用SDWebImage第三方库,可缓存图片、通过url异步加载图片 2、使用一个横向滚动的UITableView实... 阅读全文
posted @ 2014-12-24 14:21 兜兜有糖的博客 阅读(2211) 评论(2) 推荐(3) 编辑
摘要:一、NSRunLoop的理解 在初学C语言编程的时候,经常会写一种控制台中的程序,程序启动黑色的输入框,等待用户的输入,输入一组数据之后程序继续往下执行程序在等待用户输入数据时会阻塞,这是一种最简单的单线程程序执行的模式。这种简单的编程模型在实际的应用中很难满足用户的需要,比如ios中的app的主... 阅读全文
posted @ 2014-11-18 22:04 兜兜有糖的博客 阅读(570) 评论(0) 推荐(0) 编辑
摘要:@public、@protected、@private的使用 在OC中声明一个类的时候,可以使用上面@public、@protected、@private三个关键字声明实例的权限,例如下面的代码: #import @interface Person : NSObject{@public ... 阅读全文
posted @ 2014-11-06 21:18 兜兜有糖的博客 阅读(481) 评论(0) 推荐(0) 编辑
摘要:解决问题的办法: 1、确认工程设置中的Scheme,profile选项对应的是debug版本还是release版本 2、确认工程设置中debug版本或者release版本是否生成了符号表 "DWARF with dsym file" 3、确认路径/Users/[用户名]/Library/Dev... 阅读全文
posted @ 2014-11-05 16:56 兜兜有糖的博客 阅读(715) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示