自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 README

iOS_CTS工具使用说明iOS端兼容性测试工具,Compatibility Test Suite,简称CTS:提供MAC OS上可视化操作界面可驱动不同屏幕分辨率设备上的操作事件提供一对多事件镜像功能相关shell命令真机设备批量安装app sh install.sh [app包所在的路径]真机设备批量卸载app。sh uninstall.sh [app包名]# 注:app包名指

2017-08-15 16:32:34 207

转载 [转]招聘一个靠谱的iOS面试题

http://www.cocoachina.com/ios/20150803/12872.htmlhttp://www.cocoachina.com/ios/20150825/13195.html

2016-09-17 13:34:42 226

转载 题相关

abs 需要导入 #include 动态数组 #include vector<类型>名(大小); // 动态一维数组 vector< vector > point(m, vector(n) ); // 动态m*n二维数组,注意两个 “> “之间要有空格!可以将坐标定义为一个结构,然后放在动态一维数组中 typedef struct XY_Point

2016-08-24 20:32:21 252

转载 知识点回顾

1、进程和线程的区别: 进程是系统进行资源分配和调度的独立单位; 线程是进程的一个实体,是CPU调度和分派的基本单位,是比进程更小能独立运行的基本单位。 线程本身基本上不拥有系统资源,只拥有一点在运行中必不可少的资源,但可与同属于一个进程的其他线程共享进程所拥有的全部资源2、死锁的必要条件: 互斥:一个资源每次只能被一个进程使用 请求和保持:一个进程因请求资源

2016-08-17 22:59:23 274

转载 TCP协议中的三次握手和四次挥手图解

建立TCP需要三次握手才能建立,而断开连接则需要四次挥手。整个过程如下图所示: 先来看看如何建立连接的。 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源。Client端接收到ACK报文后也向Server段发生ACK报文,并分配资源,这样TCP连接就建立了。那如何断开连接呢?简单的过程如下: 【注意】中断连接端可以是Client端,也可以

2016-03-25 19:23:25 365

转载 AFNetworking

1.AFHTTPSessionManager是对NSURLSession的封装:// 创建一个请求管理者 AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] init];// 对服务器返回的数据的解析方式(默认当作JSON进行解析)// 然后在请求成功的Blcok中,按设置的解析方式解析数据 //manager

2016-03-17 11:01:36 193

原创 创建单例的两种方式(懒汉式&GCD)

懒汉式:// 创建静态全局变量static id instance;// 重写allocWithZone方法+(instancetype)allocWithZone:(struct _NSZone *)zone{ if (instance == nil) { // 如果对象为空,那么再加锁(防止频繁加锁) @synchronized(self) {

2016-03-09 21:54:25 254

原创 iOS多线程

iOS中多线程实现方案:1.NSThread1个NSThread对象就代表一条线程创建线程:NSThread *thread1 = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil];启动线程:[thread1 start];2 GCD(Grand Central Dispatch)1)为多核的并行运算

2016-03-07 14:28:52 244

转载 id & instancetype

id 可以作为方法参数传递 intancetype 不能id 可以去接受对象 instancetype不能在自定义初始化或者便利构造方法中尽量使用instancetype作为返回值类型,保证类型安全。 如:当一个类中没有某方法时,用instancetype编译器会直接给出警告,而id要当代码执行至此才会报错。

2016-03-07 11:00:38 182

原创 NSUserDefaults单例

NSUserDefaults适合存储轻量级的本地数据,比如要保存一个登陆界面的数据,用户名、密码之类的,个人觉得使用NSUserDefaults是首选。下次再登陆的时候就可以直接从NSUserDefaults里面读取上次登陆的信息。NSUserDefaults支持的数据格式有: NSNumber(Integer、Float、Double),NSString,NSDate,NSArray,NSDic

2016-03-04 16:24:33 324

原创 沙盒机制

iOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等。每个应用程序都有自己的存储空间应用程序不能翻过自己的围墙去访问别的存储空间的内容应用程序请求的数据都要通过权限检测,假如不符合条件的话,不会被放行。组织结构: 默认情况下,每个沙盒含有3个文件夹:Document

2016-03-04 15:50:25 363

转载 layoutSubviews

layoutSubviews在以下情况下会被调用: 1、init初始化不会触发layoutSubviews 但是是用initWithFrame 进行初始化时,当rect的值不为CGRectZero时,也会触发 2、addSubview会触发layoutSubviews 3、设置view的Frame会触发layoutSubviews,当然前提是frame的值设置前后发生了变化 4、滚动

2016-03-04 15:33:42 142

转载 block—控制器间传值

使用block,将VC2中的值回传给VC1步骤:

2016-03-04 14:22:42 151

原创 控制器间的传值(顺传&回传),代理方法

顺传(通过segue连线,源控制器中的数据 -> 目标控制器)步骤: 1)前提:源控制器已经与目的控制器建立了segue连线关系,即 [self performSegueWithIdentifier:@“login2contacts” sender:nil]2) 调用:prepareForSegue:(UIStoryboardSegue *)segue sende

2016-03-04 11:37:52 343

原创 block作用

1.可以像调用函数那样使用block,但区别在于block可以定义在方法内2.可以实现控制器间的传值

2016-03-04 11:19:49 598

转载 浅拷贝&深拷贝

copy是内容拷贝,retain是指针拷贝对于系统支持copy的对象而言, 1.copy只复制指向对象的指针,而不复制引用对象本身。即与原对象的内存地址相同,没有产生新的对象。 2.mutableCopy复制引用对象本身,产生了新的对象,不同于原对象的内存地址。直接对自定义对象实现copy,对象内的属性并不会拷贝 如果自定义对象想实现copy 方法,那么就必须遵守NSCopying,并且实现

2016-03-04 10:54:58 214

转载 OC如何实现多继承

有类ClassA、ClassB、ClassC及类中分别有方法a{}、b{}、c{},我们希望通过类C继承A和B,C的对象就可以使用a、b、c方法。由于Objective-C在语法上禁止类使用多继承,所以我们ClassC无法直接继承ClassA和ClassB,但是在协议的遵守上却允许使用多继承。可以在A,B类中各自定义协议,然后将要继承的方法声明在协议中,再让C类遵守协议,然后实现里面的方法

2016-03-04 09:01:55 1177

转载 内存管理相关

内存管理规则:

2016-03-03 21:32:08 175

转载 常见设计模式

(一)MVC模型、视图、控制器三部分组成,将程序进行逻辑层次划分。模型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算。模型对象更改时(例如通过网络连接接收到新数据),它通知控制器对象,控制器对象更新相应的视图对象。视图对象负责搭建用户界面,并显示来自于模型的数据,并且可以将用户行为反馈给控制器对象,选择更新模型数据在应用程序的一个或多个视图对象和一个或多个模型对象之间,控制器对象充当媒

2016-03-03 13:20:09 279

转载 类别category

类别主要有三个用途: 类别的缺陷:

2016-03-03 10:55:43 236

转载 assign&copy&ratain, strong&weak, nonatomic

assign: 简单赋值,不更改索引计数 –用于基础数据类型 (NSInteger)和C数据类型(int, float, double, char, 等)copy:建立一个索引计数为1的对象,然后释放旧对象 –用于NSString retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1 –用于其他NSObject和其子类strong&weak: 当一个对象不再有st

2016-03-02 15:42:23 240

原创 frame,bounds和center

frame 属性,通常用于实例化控件,指定初始位置 如果要在运行过程中改变控件的位置,通常使用center属性 如果要在运行过程中改变控件的大小,通常使用bounds属性

2016-03-02 15:29:48 176

原创 UICollectionViewController相关注意事项

相似点: 1.UICollectionViewController和UITableViewController很相似, 同样拥有“数据源方法”和“代理方法” 2.同样有可重用cell的思想,来优化性能注意点: 1.UICollectionViewController的cell不像UITableViewController那样在初始化时可以选择默认模式,通常需要自定义布局,调整设置。

2016-03-02 15:13:28 376

原创 导入JSON数据

导入JSON文件

2016-03-02 13:08:16 1031

转载 CSDN-markdown编辑器说明

Markdown编辑器写博客

2016-03-02 12:56:30 142

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除