BGSession一个基于NSUserDefaults实现的轻量级本地数据存储
BGSession是一个基于NSUserDefaults实现的轻量级数据存储,你只需要简单的继承它,给它添加属性,设置属性的值,就能通过NSUserDefaults同步到本地。
BGSession是一个基于NSUserDefaults实现的轻量级数据存储,你只需要简单的继承它,给它添加属性,设置属性的值,就能通过NSUserDefaults同步到本地。
GitBook 是一个基于 Node.js 的命令行工具,可使用 Github/Git 和 Markdown 来制作精美的电子书。
在这篇博客中,记录了一下gitbook的安装使用,更详细的使用请查看下面内容:
gitbook详细使用文档:help.gitbook.com
gitbook官网:https://www.gitbook.com
github地址:https://github.com/GitbookIO/gitbook
首先到nodejs下载,安装Node.js的包管理器npm。
然后,通过sudo npm install -g gitbook-cli
命令安装gitbook
UICollectionView更新事件有四种分别是插入
、删除
、刷新
、移动
,
api使用起来和UITableView类似,具体可以自己在代码中找,如果需要执行多个更新事件,可以放到performBatchUpdates中的updates闭包中作为一组动画,然后全部执行完之后通过completion调回。
|
|
四种不同的更新事件,系统默认会带有动画,不过是比较简单的。我们可以自定义layout或者继承flowLayout,在内部实现我们自己想要的动画。下面,我们来说说动画的流程,以及系统默认的四种动画内部是如何的,并且通过代码来修改达到自己想要的动画。
当我们使用系统自带的UICollectionViewFlowLayout无法实现我们的布局时,我们就可以考虑自定义layout。
所以,了解并学习一下自定义Layout是很有必要。
其实可以分三个步骤:
实现垂直方向的单列表来说,使用UITableView足以;若是需要构建横向滑动列表、gridView等直线型布局,则使用UICollectionView+UICollectionViewFlowLayout搭建最合适;更复杂的布局,则可以使用UICollectionView+自定义Layout来实现。
而这篇博客就来介绍一下UICollectionView。
首先,来了解一下UICollectionView工作流程:
当UICollectionView显示内容时,先从数据源获取cell,然后交给UICollectionView。再从UICollectionViewLayout获取对应的layout attributes(布局属性)。最后,根据每个cell对应的layout attributes(布局属性)来对cell进行布局,生成了最终的界面。而用户交互的时候,都是通过Delegate来进行交互。当然,上面只是布局cell,但是UICollectionView内部还有Supplementary View和Decoration View,也可以对其进行布局。
上面,我们了解了UICollectionView的工作流程,我们将UICollectionView分成视图、数据源和代理方法、UICollectionViewLayout三块来介绍。
创建Pod私有源步骤:
1、创建两个git仓库,一个用来做私有的Spec Repo,一个是我们自己的公共组件
2、添加私有的repo到CocoaPods
3、制作Podspec,并且推送到你创建的私有repo
4、使用Pod,在Podfile添加私有源来搭建项目
最近的iOS9系统出来了,而网络方面的ATS(App Transport Security)特性可以说每个人都要经历。而我这篇博客,就是结合我最近几天的经历,来谈谈从服务器到iOS客户端对ATS的适配。
ATS(App Transport Security)是为了提高App与服务器之间安全传输数据一个特性,这个特性从iOS9和OSX10.11开始出现,它默认需要满足以下几个条件:
如果想了解哪几种先进的加密是被允许的,详情请见官方文档App Transport Security Technote
1、写这篇博客的初衷是因为最近iOS9出来了,苹果官方默认要求使用HTTPS,所以自己想整一个HTTPS服务器,也想好好了解一下HTTPS通信,也知道了HTTPS其实就是在HTTP的基础上加上了SSL/TLS。具体想了解SSL/TLS原理的请浏览SSL/TLS协议运行机制的概述和SSL/TLS原理详解。中途看了很多博客,也花了不少时间,所以想记录一些东西。
2、这篇博客的内容主要是讲升级openssl、如何自己创建证书、配置证书到服务器和自建CA。其中对证书不太了解的,可以看数字证书及CA的扫盲介绍这篇文章。本篇博客其中第2步和第3步已经重复,只需要选择其中一步操作就可以搭建HTTPS服务器,当然搭建都是不受信任的,如果是架设网站还是需要到权威的CA机构申请证书。本来还有生成iOS客户端的证书和使用证书连接服务器相关的内容,由于篇幅的原因就把它放在下一篇吧。
3、本人使用了Mac10.10.5和Ubuntu 14.04.1进行配置搭建,本篇博客主要以Unbuntu 14.04.1系统为主。而本人这个Ubuntu 14.04.1是阿里云一键安装的,而且没有更改里面的服务器设置,所以诸多的配置可能与一般Linux系统不太相同(与我电脑上的Linux mint就很大不同)。不过,我会在最后说明一下Mac和Linux配置一些不同的地方,其实都是一些相关路径的不同。当然,有可能你的Apache安装路径与我说的几种路径都不同,没关系,对照着修改也应该没什么问题。