【一】Swift 3.0 新浪微博项目实战 -整体框架搭建
2020-02-16 09:43
253 查看
最近要接手swift项目,所以找了个视频跟着做一下实战项目,在此记录一下过程和心得
第一天的 源码点这里
框架搭建和目录拆分
关键词:MVVM 架构,桥接文件
-
桥接文件
用于引入OC的头文件,Swift就可以正常使用(宏除外)。项目内桥接文件( weibo-Bridge.h)
设置Tabbar样式 ,通过字典添加子控制器
关键词:guard let ,lazy 懒加载, extension,溢出TabbarItem的处理,@objc private
- guard let
在读取字典属性的时候,避免空值
相对于if let的使用,避免过多的嵌套,写法更加简洁方便
-
比较多的像新浪微博这种,底部Tabbar都会有一个比较独特的按钮。有些APP底部按钮有溢出底部栏的情况。 这个时候设置多一个tabbarItem,用一个按钮覆盖多出来的item, 达到效果。 在有超过底部栏的情况可以设置tabbar.bounds.insets 来解决
注意一个像素点的按钮容错 -
@objc
看到objc应该能发现这是和oc有关
一般在添加按钮的点击方法的时候都是设置 private 保证方法私有,但是直接用private编译不通过
通过@objc,允许这个函数在运行时通过OC的消息机制被调用, 所有及时被私有了,在运行时依然能调用到 - extension
类似OC中的分类
重写push方法,隐藏底部tabBar
关键词: override , super ,栈底控制器
- 重写 BaseVC的push方法。 判断值为子控制器个数
抽取barButtonItem 便利构造函数
关键词: convenience 便利构造函数 , as?
- as?vc.type 用来判断是否某种类型
自定义navBar
关键词: didset
- didset 重写属性的set方法
- 系统导航条在pop的时候有融合的情况,需要移除,自定义navBar.添加字体高亮,自定义返回样式
最后
find . -name "*.swift" | xargs wc -l
可以看到今天做的swift的文件 和代码行数
转载于:https://www.cnblogs.com/L-vincen/p/6613057.html
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- Moya 与 RxSwift 使用
- Swift学习笔记-数字
- Swift学习笔记-空格
- Swift学习笔记-条件判断
- 自学 iOS - 三十天三十个 Swift 项目 第一天
- Swift 基础语法入门(一)
- error in Swift. “Consecutive Declarations On A Line Must Be Separated By ';'”
- Swift3.0 更新后出现比较运算符方法
- Apple Swift编程
- Swift中自动生成中间带小头像的二维码
- swift懒加载以及只读属性
- UItextField 用法(swift)
- 详解Swift中的iOS设计模式
- swift 小记
- Swift的74个常用内置函数介绍
- Swift基础小结_2
- Swift学习1---Swift语言概览
- swift 如何获取webView的内容高度
- Swift 为你的webView定制标题
- swift 定制自己的Button样式