摘要: 导航栏和TabBar结合的项目,在我们平常开发中会经常看到,下面我们通过自定义的TabBar来实现一个导航和TabBar结合的Demo。 1.自定义TabBar 2.怎么使用? 阅读全文
posted @ 2016-07-19 17:20 LeeGof 阅读(1391) 评论(0) 推荐(0) 编辑
摘要: 自定义视图是在项目开发中经常会面临的工作,通过对视图进行封装,能达到更好的复用性,并使得VC里面的逻辑更加清晰。本篇将对实际项目中常用的图片轮播进行封装。 1.先从源码看起 首先,定义了一个枚举类型,用于区分图片的存储类型:网络图片还是本地图片。 然后对图片轮播类进行了功能封装。 最后,通过扩展来遵 阅读全文
posted @ 2016-07-19 16:54 LeeGof 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 和OC一样,Swift中也可以添加运行时属性。下面将提供一个完整的例子,演示如何给按钮点击事件添加运行时属性。 1.示例 2.示例说明 在Swift中,闭包不属于AnyObject,因此,需要做一个相互转换。如下所示: 使用方式如下: 阅读全文
posted @ 2016-07-19 14:31 LeeGof 阅读(1794) 评论(0) 推荐(0) 编辑
摘要: 实际项目开发中,我们经常会需要对系统的UI控件等进行封装,以达到统一修改、重复代码少、复用性高等效果。OC中,我们一般通过Category来给现有类添加方法;而在Swift中,我们使用Extension来扩展现有类的功能。 1.先看一个完整的扩展示例 【注意】:需要注意一下这里的方法参数,都是可选类 阅读全文
posted @ 2016-07-19 14:17 LeeGof 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 1.回忆一下OC中的单例实现 + (instancetype)sharedManager; 2.Swift中的单例实现 在Swift中,有多种方式可以创建单例,比较常用也推荐使用的是如下的方式: 提供一个空的私有init()方法,可以保证单例是真正唯一的,避免外部对象通过访问init方法创建单例类的 阅读全文
posted @ 2016-07-19 13:52 LeeGof 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 在OC中,我们经常会用typedef关键字来声明Block,例如: 在Swift中,typedef关键字替换成了typealias。实际项目开发中,我们常用的闭包宏定义如下: 阅读全文
posted @ 2016-07-19 13:17 LeeGof 阅读(2640) 评论(0) 推荐(0) 编辑
摘要: Swift 中没有宏定义,苹果建议使用let 或者 get 属性来替代宏定义值。虽然没有#define,但我们仍然可以使用 #if 并配合编译的配置来完成条件编译。下面会列出Swift项目开发中的一些常用宏定义,并提供源码。 1.常用字体宏定义 2.常用颜色宏定义 3.常用变量/方法定义 【注意】: 阅读全文
posted @ 2016-07-19 12:02 LeeGof 阅读(2079) 评论(0) 推荐(0) 编辑
摘要: 经历前面三部分的学习之后,我们对于Swift的有了基本的了解,知道它的基础语法,也知道了类、结构体、枚举、协议、扩展等等内容。但知道上面这些内容,并不代表我们就能很好的进行实际的项目开发了,本部分内容将手把手的教你进行Swift的项目开发。 1.新建Swift项目 打开XCode,选择【File】 阅读全文
posted @ 2016-07-19 11:45 LeeGof 阅读(857) 评论(0) 推荐(0) 编辑