当前仓库属于关闭状态,部分功能使用受限,详情请查阅 仓库状态说明
1 Star 0 Fork 26

Wayne / SwiftEFarm
关闭

forked from ShownBie / SwiftEFarm
关闭
 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

SwiftEFarm

我的第一个swift项目

效果图:

轮播图 截图 截图 截图

阅读这个项目你可以学到的东西:

  • 如何创建一个文件目录清晰的项目
  • swift基本语法,例如普通属性和计算属性,类别,外部方法内部方法等...
  • swift侧滑轮子的封装
  • MVVM的Controller的写法
  • swift使用CocoaPod导入第三方, 使用混编使用OC第三方
  • 3DTouch快速启动和Peek/Pop
  • TablveView的性能优化
  • iOS11的适配和iPhone X的适配

以上的知识点基本按照写这个项目的时间顺序来总结的, 其实到3DTouch本来就打算结束项目的, 结果发现升级iOS 11之后系统的TableView变得更加卡顿, 不优化的情况下用户体检很不好(怀疑的可以看看iOS11.0的iPhone 设置->移动蜂窝网络 滑动测试一下), 所以彻底进行了优化, 同时顺便适配iPhone X, 至此项目完结


项目目录阅读指导

这个项目从Xcode的singleView模板创建而来, 经过文件整理归类和修改创建了一个标准易于维护的模板, 最终的你可以通过以下链接学习

一步一步创建一个标准的iOS项目模板

最终结果如下:

项目标准目录

作为项目阅读指导模块,介绍一下项目目录框架

项目使用swift4编写, 适配最新iPhoneX


    Constant 模块
        AppUrl : 定义url静态变量
        PublicConstant : 定义cellidentifier, ScreenWidth等变量, BaseColor等变量, 封装view的一些属性(.width等), UIDevice分类判断iPhone X

    MianCode 模块
        各个模块 每个模块分位四块:controller(界面跳转,view切换), control(数据下载, 解析model), model(model申明), cell(view)    
 
    General 模块
        UserInfo : 示例封装set/get UserDefaults   
        RootController : 封装侧滑界面 (这是本项目的第一个类, 也是我开始学习swift的第一个类, 包含基本语法的注释)

    Library 模块
        示例使用OC混编, 没有使用CocoaPod的第三方库
        包括 : MJRefresh, DZNEmptyDataSet 等

    Resouce 模块
        图片文件
        
    Config模块
        项目初始文件


    Pod
        'Alamofire'      网络请求
        'SwiftyJSON'     Json解析
        'Kingfisher'     image缓存
        'PKHUD'          加载动画

因为这个项目是第一次使用swift语言, 所有淌了很多水, 也是查阅了很多资料, 会在以下博客中体现. 项目对于使用哪个轮子也是做了很多考察, 使用pod还是本地等. 对与项目的整体设计和UI体验做的一些优化.

至此项目也是比较完美了. 欢迎提意见

关于此项目的博客, 重磅上线😄

)

空文件

简介

完成版的Swift项目, 适配11和X 展开 收起
Swift
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Swift
1
https://gitee.com/wayne_yuan/SwiftEFarm.git
git@gitee.com:wayne_yuan/SwiftEFarm.git
wayne_yuan
SwiftEFarm
SwiftEFarm
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891