自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 JS作用域链

JS声明的变量会根据作用域链查找作用域是否声明该变量,如果没有,则查找上一个作用域,知道全局作用域。 // 全局作用域 functionf1(){ // f1作用域 vara=2 functionf2(){ // f2作用域 a=1 console.log(a) } ...

2020-02-06 22:55:29

阅读数 5

评论数 0

原创 Weex iOS SDK源码分析

weex的基本工作原理 我们在weex项目中编写的代码最终通过编译打包后形成bundlejs文件。 iOS项目通过Weex SDK解析bundlejs文件,进行native的界面渲染。 Weex SDK的组件渲染 应用完成启动时会初始化WeexSDK; - (BOOL)appl...

2018-07-22 20:43:07

阅读数 445

评论数 0

原创 Weex的多页面配置

前言Weex是使用Vue和WebPack进行项目配置的。Weex创建的项目默认是只有一个入口的,也就是说,是单页面应用。对于移动开发来说,使用单页面(使用vue-router)是没有原生的页面跳转效果。在Weex的官方文档中,Weex提供了navigator内置模块来实现Web端前进、后退页面,以...

2018-06-03 20:39:16

阅读数 4709

评论数 2

原创 Core Animation的使用

关于Core AnimationCore Animation是IOS和OS X的图形渲染和动画的基础设施,你可以使用它来进行动画绘制视图和其他APP的可视元素。Core Animation为你完成大量动画帧的描绘工作。你所要做的是设置一些动画参数(例如开始和结束点)和启动Core Animatio...

2018-04-27 17:12:48

阅读数 87

评论数 0

原创 Core Animation动画暂停和恢复

-(void)pauseLayer:(CALayer*)layer { CFTimeInterval pausedTime = [layer convertTime:CACurrentMediaTime() fromLayer:nil]; layer.speed = 0.0; l...

2018-04-25 12:15:49

阅读数 296

评论数 0

原创 Core Text的使用

关于Core TextCore Text是先进的,低级别的布局文本和处理字体的技术。Core Text的API包含在Mac OS X v10.5和IOS 3.2中,能被所有的OS X和IOS环境获取。Core Text是关联Core Graphics框架(Quartz)的低级别文本处理技术。如果你...

2018-04-12 10:55:10

阅读数 122

评论数 0

原创 LCS(最长公共子序列)

LCS(最长公共子序列)LCS是Longest Common Subsequence的缩写,即最长公共子序列。一个序列,如果是两个或多个已知序列的子序列,且是所有子序列中最长的,则为最长公共子序列。解决方法对于一般的LCS问题,都属于NP问题。当数列的量为一定的时,都可以采用动态规划去解决算法设两...

2018-03-27 10:17:35

阅读数 39

评论数 0

原创 IOS重用机制导致的UITableVIewCell或者UICollectionViewCell显示错误

当我们使用UITableVIew和UICollectionView时都会遇到重用显示问题。IOS系统默认会把标识相同的cell进行重用,你可以在创建cell的代理方法中是用UITableView的- (__kindof UITableViewCell *)dequeueReusableCellWi...

2018-03-26 10:18:26

阅读数 185

评论数 0

原创 URL Session的使用

URL Session相关类URL加载获取URL的Data数据(存储在内存)这里有两种基本的方式获取URL的Data数据。• 对于简单的请求,直接使用NSURLSession直接获取NSURL的数据或者直接使用NSData获取URL数据。• 对于复杂的请求,使用NSURLSession和NSURL...

2018-03-21 18:02:11

阅读数 2044

评论数 0

原创 KVO详解

KVO介绍KVO允许在对象的指定属性发生变化时获取通知。这是非常有用的对于模型和控制器层的通讯。控制器对象观察模型的属性,视图对象通过控制器观察模型的属性。除外,模型对象可以观察其他模型对象,甚至是自己。你可以观察的属性包括简单属性(attributes),一对一关系,一对多关系。观察一对多关系的...

2018-03-19 17:40:25

阅读数 154

评论数 0

原创 KVC详解

关于KVCKVC为遵守NSKeyValueCoding协议的对象提供间接的方式来访问它们的属性。当对象符合KVC,属性能通过字符串来进行访问,也可以通过实例变量和对应的访问方法访问属性。获取访问方法返回属性的值,设置访问方法设置属性的值。在OC,你可以使用实例变量访问属性。虽然这些方式可以直接访问...

2018-03-15 11:59:45

阅读数 246

评论数 0

原创 IOS HTTPS 服务器信任评估

HTTPS 服务器信任评估当你进行HTTPS连接时,客户端必须评估服务器是否可信。如果评估失败,客服端应该取消连接。这种情况可能由于各种原因,例如,服务器使用自己签名的证书,中间证书缺失等。还有一些恶意情况,服务器可能是个为了盗窃用户数据的冒充服务器。HTTPS 相关概念• 验证咨询(authen...

2018-03-02 16:02:38

阅读数 852

评论数 0

原创 IOS 后台传输

创建后台会话- (NSURLSession *)backgroundSession { /* Using disptach_once here ensures that multiple background sessions with the same identifier are not c...

2018-02-27 08:59:58

阅读数 342

评论数 0

原创 Core Bluetooth的详细使用

Core Bluetooth的简单介绍Core Bluetooth是基于蓝牙4.0的,它抽象了一组协议用于与蓝牙低功耗设备通讯。由于Core Bluetooth隐藏了蓝牙底层的细节,它使得开发者能够很容易地实现与蓝牙低功耗设备的通讯。中心和外设设备以及它们的角色在蓝牙通讯中外设是拥有设备想要的数据...

2018-02-24 20:00:48

阅读数 628

评论数 0

原创 RunLoop的简单使用

run loop简介run loop是一个关联线程的基础设施。run loop是一个事件处理循环,主要用于安排工作和接收事件。它可以让线程在有工作的时候繁忙,没有工作的时候休眠。如果没有run loop的话,你需要创建while或者for循环来不断监听事件,但这样性能低下。每个线程都有一个run ...

2017-10-26 10:32:43

阅读数 161

评论数 0

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