
iOS
文章平均质量分 67
PDD_1128
iOS的开发,我在慢慢成长。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
IOS定位及编译位置为中文
IOS开发中的定位,定位器,定位失败,定位成功以及成功后的编译成中文地址。原创 2015-01-21 13:49:28 · 533 阅读 · 0 评论 -
cocoapods
Cocoapods是OS X和iOS下的一个第三方库管理工具,并且支持Objective-C和swifit语言。通过Cocoapods为项目添加称为"Pods"的依赖库(这些库必须是Cocoapods所支持的),并且轻松实现第三方库的版本管理。 引入Cocoapods的意义:Cocoapods在引入第三方库时自动为我们完成各种配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-...原创 2018-06-19 10:50:48 · 339 阅读 · 0 评论 -
简述文件存储
在iOS开发过程中常用的本地化存储有五种方式:1.plist (XML属性列表归档NSArray\NSDictionary)2.preference (偏好设置\NSUserDefaults)(本质还是通过plist来存储数据,但是使用更加简单,无需关注文件、文件夹路径和名称)3.NSCoding (NSKeyedArchiver\NSKeyedUnarchiver)(能把任何对象都直接保存成文件...原创 2018-06-12 10:30:34 · 502 阅读 · 0 评论 -
KVO
键值观察机制,提供了观察某一属性变化的方法。 底层实现原理: 1、当某个类的属性对象第一次被观察时,系统通过runtime动态生成的该类的一个子类,NSKVONotifying_ 类,这个类就是用来做KVO的事情。动态创建类: 类名: const char *className = "NSKVONotification_Person"; 创建类: ClassnewClass = ...原创 2018-05-22 09:27:49 · 224 阅读 · 0 评论 -
浅谈IOS的多线程
在同一时刻,一个CPU只能处理1条线程,但CPU可以在多条线程之间快速的切换,只要切换的足够快,就造成了多线程一同执行的假象。 多线程是通过提高资源使用率来提高系统总体的效率。 主线程:处理UI,所有更新UI的操作都必须在主线程上执行。不要把耗时操作放在主线程,会卡界面。 运用多线程的目的是:将耗时的操作放在后台执行!一.线程的生命周期: 新建- 就绪- 运行- 阻...原创 2018-05-14 15:34:25 · 303 阅读 · 0 评论 -
多线程
目的本文主要是分享iOS多线程的相关内容,为了更系统的讲解,将分为以下7个方面来展开描述。多线程的基本概念线程的状态与生命周期多线程的四种解决方案:pthread,NSThread,GCD,NSOperation线程安全问题NSThread的使用GCD的理解与使用NSOperation的理解与使用Demo在这里:WHMultiThreadDemoDemo的运行gif图如下:一、多线程的基本概念进程...转载 2018-05-09 11:36:40 · 177 阅读 · 0 评论 -
KVC
键值编码Key-Value Coding,一种非正式的协议,提供一种机制通过使用字符串来间接访问对象的属性,而不是通过我们明确的存取方式来获取。 KVC的规则: 当调用valueForKey、setValue:forKeyPath(二级属性)方法时, 首先判断是否主动创建了属性,检查是否存在相应的key的set方法,如果存在,就调用set方法。 如果没有,+(Boo...原创 2018-05-04 10:06:24 · 390 阅读 · 0 评论 -
Block
带有自动变量(局部变量)的匿名函数。(Block其实就是一个代码块,把你想要执行的代码封装在这个代码块里,等到需要时再去调用。) ARC下block如果访问外部变量,block在堆里,可以使用copy和strong,并且block是一个对象。 定义属性: void (^blockName)( );//无返回值,无参数 void (^blockName)(NSObject,s...原创 2018-05-04 10:01:56 · 204 阅读 · 0 评论 -
RunTime的原理和问题
RunTime 是一套C语言的API,它把一些工作放在代码运行时才处理,而并非是编译时,即很多类和成员变量在我们编译的时候是不知道的,在运行时,才会被转换成完整的确定的代码运行。因此,需要一个运行时的系统,来处理编译后代码转换的过程。OC怎么与运行时交互? 1、与OC源代码交互。编译器把编写好的OC源代码转换成C语言运行时的代码后,runtime负责在运行时通过传递消息的方式调用方法,...原创 2018-04-18 15:39:14 · 797 阅读 · 0 评论 -
RunLoop使用
1、runloop是什么? 是一个为了保持程序持续运行的do-while死循环。程序循环中,处理APP中的各种事件,像touch、定时器、selector事件,从而保持程序持续运行,没事时休眠,节约CPU资源,提高了程序的性能。 Do-while:先执行循环语句,然后判断while中表达式真假,若真,继续执行,若假,退出循环。 原理:线程中的一个循环,循环中不断的检测input ...原创 2018-04-12 15:58:25 · 372 阅读 · 0 评论 -
iOS 从main函数开始
iOS 从main函数开始 app程序的入口,同样是main函数 main函数为 int main(int argc, char * argv[]),C系语言大多都是这个样子,argc是命令行总的参数个数,argv是参数的数组,值得一提的是argv中第一个参数为app的路径+全名。 然后就是main中的代码 @autoreleasepool { ret转载 2017-08-09 11:06:18 · 505 阅读 · 0 评论 -
TableView执行顺序和优化
在iphone移动开发中,经常用到TableView,总结了一下关于UITableViewDataSource 和 UITableViewDelegate的一些属性和方法。@property(nonatomic,readonly) UITableViewStyle style //表格样式@property(nonatomic,assign) id <UITableViewDataS...原创 2015-01-05 10:12:24 · 549 阅读 · 0 评论 -
【IOS网络编程】socket编程 - Asyncsocket
iPhone的标准推荐是CFNetwork 库编程,其封装好的开源库是 cocoa AsyncSocket库,用它来简化CFNetwork的调用,它提供了异步操作主要特性有: 队列的非阻塞的读和写,而且可选超时。你可以调用它读取和写入,它会当完成后告知你自动的socket接收。如果你调用它接收连接,它将为每个连接启动新的实例,当然,也可以立即关闭这些连接委托(deleg转载 2015-01-21 14:19:09 · 374 阅读 · 0 评论 -
关于IOS的一些面试题
1、NSObject基类、元类、协议?isa:是一个Class 类型的指针. 每个实例对象有个isa的指针,他指向对象的类,而Class里也有个isa的指针, 指向meteClass(元类)。元类保存了类方法的列表。当类方法被调 用时,先会从本身查找类方法的实现,如果没有,元类会向他父类查找该方法。同时注意的是:元类(meteClass)也是类,它也是对象。元类也有isa指针,它的isa指针最终指...原创 2018-06-19 10:53:16 · 390 阅读 · 0 评论