自定义博客皮肤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)
  • 收藏
  • 关注

转载 iOS - 面试总结

唐巧的一篇面试总结 设计模式是什么? 你知道哪些设计模式,并简要叙述? 设计模式是一种编码经验,就是用比较成熟的逻辑去处理某一种类型的事情。 1). MVC模式:Model View Control,把模型 视图 控制器 层进行解耦合编写。 2). MVVM模式:Model View ViewModel 把模型 视图 业务逻辑 层进行解耦和编写。 3). 单例模式:通过...

2017-07-30 18:53:00 122

转载 iOS- JSBridge的原理

原理概述 简介 JSBridge是Native代码与JS代码的通信桥梁。目前的一种统一方案是:H5触发url scheme->Native捕获url scheme->原生分析,执行->原生调用h5。如下图 查看大图 https://dailc.github.io/staticResource/blog/hybrid/jsbridge/img_hybrid_...

2017-07-09 22:58:00 129

转载 细说OC中的load和initialize方法

OC中有两个特殊的类方法,分别是load和initialize。本文总结一下这两个方法的区别于联系、使用场景和注意事项。Demo可以在我的Github上找到——load和initialize,如果觉得有帮助还望点个关注以示支持,总结在文章末尾。 先来看看NSObject Class Reference里对这两个方法说明: +(void)initialize The runtim...

2017-04-10 11:56:00 162

转载 iOS超全开源框架、项目和学习资料汇总:UI篇

上下拉刷新控件 1.MJRefresh--仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能。可以自定义上下拉刷新的文字说明。(推荐) 2.SVPullToRefresh--下拉刷新控件4500+star,值得信赖3.CBStoreHouseRefreshControl--一个效果很酷炫的下拉刷新控件3600+star4...

2017-01-30 11:08:00 168

转载 最快让你上手ReactiveCocoa之基础篇(简称RAC)

前言 很多blog都说ReactiveCocoa好用,然后各种秀自己如何灵活运用ReactiveCocoa,但是感觉真正缺少的是一篇如何学习ReactiveCocoa的文章,小编看了很多篇都没看出怎么使用ReactiveCocoa,于是决定自己写一遍关于学习ReactiveCocoa的文章,本文主要针对如何从零开始学习ReactiveCocoa. 1.ReactiveCocoa简介 ...

2016-11-24 10:39:00 94

转载 如何给 UILable 添加横线

类似淘宝上的原价现价,原价上一般都会有一条横线,这种效果怎么实现呢?其实相当的简单,我们只需要重写自定义的lable的- (void)drawRect:(CGRect)rect 方法就行了。 具体实现方法如下: 1. 调用super的方法就可以拿到值 [super drawRect:rect]; 2. 获取到lable字体的尺寸 CGSize...

2016-10-11 16:28:00 182

转载 AFN

一、什么是AFN 全称是AFNetworking,是对NSURLConnection的一层封装 虽然运行效率没有ASI高,但是使用比ASI简单 在iOS开发中,使用比较广泛 AFN的github地址 https://github.com/pokeb/AFNetworking/AFNetworking 二、AFN结构 NSURLConnecti...

2016-10-11 16:04:00 89

转载 GCD简介

什么是GCD 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数 GCD的优势 GCD是苹果公司为多核的并行运算提出的解决方案 GCD会自动利用更多的CPU内核(比如双核、四核) GCD会自动管理线程的生命周期(创建线程、调度任务、销毁线程) 程序员只需要告诉GCD想要执行什么任务,不需...

2016-10-09 19:43:00 2969

转载 多线程的安全隐患

资源共享 1块资源可能会被多个线程共享,也就是多个线程可能会访问同一块资源 比如多个线程访问同一个对象、同一个变量、同一个文件 当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题 安全隐患分析: 安全隐患的解决——互斥锁: 互斥锁使用格式 @synchronized(锁对象) { // 需要锁定的代...

2016-10-09 16:26:00 94

转载 多线程——NSThread

创建和启动线程 一个NSThread对象就代表一条线程 // 创建、启动线程 NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil]; [thread start]; // 线程一启动,就会在线程thread中执行self的run方法...

2016-10-09 12:53:00 59

转载 viewController的生命周期

一、 ARC环境 单个viewController的生命周期 initWithCoder:(NSCoder *)aDecoder:(如果使用storyboard或者xib) loadView:加载view viewDidLoad:view加载完毕 viewWillAppear:控制器的view将要显示 viewWillLayoutSubviews:控制器的view将...

2016-10-05 14:52:00 60

转载 iOS-桥接方式

很多时候都会使用到CoreFoundation的函数,其返回值为CoreFoundation框架的对象,如果想转换为Foundation框架的对象就可以使用桥接方式来搞定。 示例代码: CFStringRef firstname = ABRecordCopyValue(person, kABPersonFirstNameProperty); CFStringRef last...

2016-10-05 11:07:00 83

转载 iOS之内存分析

静态内存分析(Product->Analyze) 静态内存分析是不运行程序,直接对代码进行分析. 但是没有真正分配内存,根据代码的上下文的语法结构,来分析是否有内存泄露 缺点:不一定准确,但是如果发现有提示,那么去结合上下文看一下,这里的代码是否有问题 imageName和imageWithContentsOfFile加载图片的区别 imageName:加载的图...

2016-09-29 16:25:00 75

转载 扫描二维码

读取二维码需要导入AVFoundation框架 利用摄像头识别二维码中的内容(模拟器不行) 输入(摄像头) 由会话将摄像头采集到的二维码图像转换成字符串数据 输出(数据) 由预览图层显示扫描场景 简单设置扫描二维码的代码如下: // 1. 实例化拍摄设备 AVCaptureDevice *device = [AVCaptureDevice defaul...

2016-09-29 10:51:00 84

转载 二维码的生成

二维码的生成 从iOS7开始集成了二维码的生成和读取功能 此前被广泛使用的zbarsdk目前不支持64位处理器 生成二维码的步骤: 1.导入CoreImage框架 2.通过滤镜CIFilter生成二维码 二维码的内容(传统的条形码只能放数字): 纯文本 名片 URL 简单生成二维码代码如下: #import <CoreImage/CoreI...

2016-09-28 10:53:00 76

转载 深入了解GCD

首先提出一些问题: dispatch_async函数如何实现,分发到主队列和全局队列有什么区别,一定会新建线程执行任务么? dispatch_sync函数如何实现,为什么说 GCD 死锁是队列导致的而不是线程,死锁不是操作系统的概念么? 信号量是如何实现的,有哪些使用场景? dispatch_group的等待与通知、dispatch_once如何实现? di...

2016-09-27 21:49:00 332

转载 iOS多线程——GCD与NSOperation总结

很长时间以来,我个人(可能还有很多同学),对多线程编程都存在一些误解。一个很明显的表现是,很多人有这样的看法: 新开一个线程,能提高速度,避免阻塞主线程 毕竟多线程嘛,几个线程一起跑任务,速度快,还不阻塞主线程,简直完美。 在某些场合,我们还见过另一个“高深”的名词——“异步”。这东西好像和多线程挺类似,经过一番百度(阅读了很多质量层次不齐的文章)之后,很多人也没能真正搞懂何...

2016-09-27 11:35:00 107

转载 Socket层上的协议

Socket层上的协议指的数据传输的格式 HTTP协议 传输格式:假设:这是假设,实际http的格式不是这样的。 http1.1,content-type:multipart/form-data,content-length:188,body:username=zhangsan&password=123456 XMPP协议,是一款即时通讯协议 可扩...

2016-09-26 21:03:00 71

转载 网络通信的要素

网络上的请求就是通过Socket来建立连接然后互相通信 IP地址(网络上主机设备的唯一标识) 端口号(定位程序) 用于标示进程的逻辑地址,不同进程的标示 有效端口:0~65535,其中0~1024由系统使用或者保留端口,开发中建议使用1024以上的端口 传输协议(用什么样的方式进行交互) 通讯的规则 常见协议:TCP、UDP 转载于:https://www.cnb...

2016-09-26 20:58:00 100

转载 Socket通信流程

Socket通信流程 HTTP 底层就是通过socket建立连接通信管道,实现数据传输 HTTP是一个TCP的传输协议(方式),它是一个可靠,安全的协议 转载于:https://www.cnblogs.com/iOS-eflying/p/5908312.html...

2016-09-26 10:48:00 76

转载 Socket-IOS

Socke Socket又称"套接字” 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 应用程序通常通过"套接字"向网络发出请求或者应答网络请求 转载于:https://www.cnblogs.com/iOS-eflying/p/5908284.html...

2016-09-26 10:44:00 54

转载 TCP&UDP

TCP(传输控制协议) 建立连接,形成传输数据的通道 在连接中进行大数据传输(数据大小不受限制) 通过三次握手完成连接,是可靠协议,安全送达(三次握手向服务器发送请求,响应请求回复,发送数据) 必须建立连接,效率会稍低 UDP(用户数据包协议) 将数据及源(自己的电脑)和目的封装成数据包中,不需要建立连接 每个数据包的大小限制在64K之内 因为不需要连接,所以...

2016-09-26 10:29:00 41

转载 GIT团队开发操作

01. 建立代码仓库(专门用于团队开发的代码仓库) ================================================================================ # 切换目录 $ cd /Users/Desktop/git演练/公司/weibo # 建立空白代码库(专门用于团队开发) $ git init --bare ...

2016-09-24 11:23:00 88

转载 GIT本地操作

01. GIT简介(PPT) ================================================================================ 02. GIT命令行帮助 ================================================================================...

2016-09-24 11:22:00 83

转载 OC基础了解篇

.h文件存放声明 .m文件存放实现(支持c语言和OC的混编) .mm文件存放实现 (支持OC就和C++的混编) 异常处理,很少被用到/** *#import功能与#include功能一样就是包含文件 *#import能够自动防止文件重包含 *@autoreleasepool是一个内存管理的专业术语是自动释放池 *(...)是可变参数 ...

2016-08-19 16:00:00 56

空空如也

空空如也

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

TA关注的人

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