摘要: 设计模式是什么? 你知道哪些设计模式,并简要叙述? MVC 和 MVVM 的区别 #import跟 #include 有什么区别,@class呢,#import<> 跟 #import””有什么区别? frame 和 bounds 有什么不同? Objective-C的类可以多重继承么?可以实现多个 阅读全文
posted @ 2017-07-30 18:53 iOS-eflying 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 原理概述 简介 JSBridge是Native代码与JS代码的通信桥梁。目前的一种统一方案是:H5触发url scheme->Native捕获url scheme->原生分析,执行->原生调用h5。如下图 查看大图 https://dailc.github.io/staticResource/blo 阅读全文
posted @ 2017-07-09 22:58 iOS-eflying 阅读(8465) 评论(0) 推荐(0) 编辑
摘要: OC中有两个特殊的类方法,分别是load和initialize。本文总结一下这两个方法的区别于联系、使用场景和注意事项。Demo可以在我的Github上找到——load和initialize,如果觉得有帮助还望点个关注以示支持,总结在文章末尾。 先来看看NSObject Class Referenc 阅读全文
posted @ 2017-04-10 11:56 iOS-eflying 阅读(456) 评论(0) 推荐(0) 编辑
摘要: 上下拉刷新控件 1. MJRefresh --仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能。可以自定义上下拉刷新的文字说明。(推荐) 2. SVPullToRefresh --下拉刷新控件4500+star,值得信赖3. CBStoreHou 阅读全文
posted @ 2017-01-30 11:08 iOS-eflying 阅读(838) 评论(1) 推荐(0) 编辑
摘要: 前言 很多blog都说ReactiveCocoa好用,然后各种秀自己如何灵活运用ReactiveCocoa,但是感觉真正缺少的是一篇如何学习ReactiveCocoa的文章,小编看了很多篇都没看出怎么使用ReactiveCocoa,于是决定自己写一遍关于学习ReactiveCocoa的文章,本文主要 阅读全文
posted @ 2016-11-24 10:39 iOS-eflying 阅读(1841) 评论(0) 推荐(0) 编辑
摘要: 类似淘宝上的原价现价,原价上一般都会有一条横线,这种效果怎么实现呢?其实相当的简单,我们只需要重写自定义的lable的 - (void)drawRect:(CGRect)rect 方法就行了。 具体实现方法如下: 1. 调用super的方法就可以拿到值 [super drawRect:rect]; 阅读全文
posted @ 2016-10-11 16:28 iOS-eflying 阅读(671) 评论(0) 推荐(0) 编辑
摘要: 一、什么是AFN 全称是AFNetworking,是对NSURLConnection的一层封装 虽然运行效率没有ASI高,但是使用比ASI简单 在iOS开发中,使用比较广泛 AFN的github地址 https://github.com/pokeb/AFNetworking/AFNetworking 阅读全文
posted @ 2016-10-11 16:04 iOS-eflying 阅读(576) 评论(0) 推荐(0) 编辑
摘要: 什么是GCD 全称是Grand Central Dispatch,可译为“牛逼的中枢调度器” 纯C语言,提供了非常多强大的函数 GCD的优势 GCD的优势 任务和队列 GCD中有2个核心概念 GCD中有2个核心概念 GCD的使用就2个步骤 GCD的使用就2个步骤 将任务添加到队列中 将任务添加到队列 阅读全文
posted @ 2016-10-09 19:43 iOS-eflying 阅读(832) 评论(0) 推荐(0) 编辑
摘要: 资源共享 资源共享 当多个线程访问同一块资源时,很容易引发数据错乱和数据安全问题 安全隐患分析: 安全隐患的解决——互斥锁: 互斥锁使用格式 @synchronized(锁对象) { // 需要锁定的代码 } 注意:锁定1份代码只用1把锁,用多把锁是无效的 互斥锁的优缺点: 优点:能有效防止因多线程 阅读全文
posted @ 2016-10-09 16:26 iOS-eflying 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 一个NSThread对象就代表一条线程 // 创建、启动线程 NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil]; [thread start]; // 线程一启动, 阅读全文
posted @ 2016-10-09 12:53 iOS-eflying 阅读(209) 评论(0) 推荐(0) 编辑