Swift实战项目开发今日头条(项目产品说明文档) [复制链接]

2019-11-14 16:43
byebye0521 阅读:324 评论:0 赞:0


产品文档介绍

目录介绍

一、网络封装/项目基础模块

   1-1、项目介绍

   1-2、网络封装和宏文件

   1-3、标签栏创建和item点击缩放动画

二、登陆注册UI

   2-1、动画弹出登陆注册视图

   2-2、注册页面搭建

   2-3、注册页面优化

   2-4、注册登陆切换

   2-5、找回密码

   2-6、找回密码和协议

   2-7、一键登陆

   2-8、邮箱登陆

三、设置页面

   3-1、设置页面搭建(上)

   3-2、设置页面搭建(下)

   3-3、设置页面逻辑处理

四、登陆注册信息验证并提交

北京福彩网   4-1、登陆注册信息验证/提示动画

   4-2、注册接口/钥匙串(keychain)存储

   4-3、多种登陆方式/修改密码

五、个人中心

   5-1、个人中心页面搭建

   5-2、个人中心头部视图切换

   5-3、搭建修改资料页面

   5-4、修改头像/性别

   5-5、修改昵称/个人介绍页面搭建

   5-6、修改昵称/个人介绍信息提交

   5-7、修改生日

   5-8、修改地区

六、北京福彩网

   6-1、北京福彩网搜索/头部标签布局搭建

   6-2、搭建北京福彩网内容滑动视图

   6-3、选中标签居中和内容滑动关联

   6-4、自定义北京福彩网不同内容cell

   6-5、北京福彩网频道分类

   6-6、频道分类显示/动画添加删除

   6-7、频道标签长按拖拽移动换位

   6-8、自定义刷新/搜索推荐列表

七、北京福彩网网络数据获取

   7-1、北京福彩网搜索推荐和频道分类数据

   7-2、北京福彩网标签和内容数据获取

   7-3、北京福彩网内容数据转换

八、西瓜视频

北京福彩网   8-1、西瓜视频页面搭建

   8-2、西瓜视频数据获取

九、小视频

北京福彩网   9-1、小视频界面及数据

 详情页面

 

App整体结构

一、App内部主要分为第三方模块(如获取网络数据,网络图片。。。),好友页面搭建,不同UI进行封装方面多个页面进行复用显示不同的内容。主要模块如下图




二、主要的开源框架介绍

   2。1、网络请求框架

       在开发过程中对于使用oc的开发者来说一定十分熟悉AFNetworking这个框架,因为在我们OC的App中只要是有关于网络请求的部分都会通过这个框架来进行网络请求。而Alamofire就相当于swift版本的AFNetworking。在swift中我们大部分都会使用Alamofire来进行网络数据处理。使用时尽量通过cocoapods命令来导入这个需要的第三方类库,导入方法如下:

第一步先打开终端输入下面两个命令


cd + 空格+ 项目地址:如/Users/imac/Desktop/text1  + 回车,

vim podfile  +回车进入编辑器 ,编辑器示例代码如下,红框中的就是我们需要的网络请求库和数据转换json格式的框架


上图中“study”可换成自己创建的项目名称,输入字母i开始编辑,编辑完后按退出键(esc)+ 冒号 + wq 保存退出,在输入pod install + 回车,出现如下图内容说明导入成功


再次打开项目多了一个白色工程就是我们要打开的文件,如下图


Alamofire.swift文件主要有两个功能:1. 提供了整个框架的入口。2. 向整个框架提供了方便的数据处理方法。

参考链接:

下面我们看一下如何使用Alamofire这个网络通讯模块来封装进行数据请求,一个简单的post和get请求如下:


1、首相导入网络请求框架头文件import + 框架头文件

2、请求方式(get、post)

北京福彩网3、封装方法进行网络请求获取数据

4、block回调请求成功后的参数

 参考链接:

三、其它第三方常用框架

   3.1、图片加载框架:Kingfisher,使用方法如下:



  第一种加载图片方式没有默认图片显示

   第二种加载图片方式加载之前会先显示默认图片,我们在实际开发中看情况进行使用

   3.2、上拉加载和下拉刷新(可自定义/第三方(MJRefresh)),使用方法如下

然后实现对应方法就可以

   3.3、适配(可自定义计算位置/第三方(Snapkit),使用方法相当于oc中的Mastory布局框架)

   3.4、视频播放技术(这个有很多,我们可以自定义AVPlayer,也可以使用以及封装好的BMPlayer或者其它音视频播放控件)

 参考链接:

四、项目开发中常用用到的控件与开发技术

  4。1、列表显示(tbale/collection)

4。1。1、 cell赋值方法要注意低耦合,高内聚,如可将获取到数据以后就可以将cell赋值操作放到cell中去处理,如下图;

   

第一张图片为传值方法,第二张图片为cell赋值方法

   4.2、拖动手势(UIPanGestureRecognizer)以及根据当前拖动的距离判断复位还是隐藏当前视图

   4.3、封装网络请求,获取服务器数据

   4.4、加载网络图片

   4.5、页面控件适配

   4。6、swift类只有一个后缀为。swift的类,oc有两个(。h\。m)

北京福彩网 参考链接:

五、开发过程注意事项

5.1、日志统一打印,测试打开,上线关闭

5.2、类名命名,类名规范,以及类名注释

5.3、方法名命名,规范以及注释

【领取优惠券】


我来说两句
您需要登录后才可以评论 登录 | 立即注册
facelist
所有评论(0)
领先的中文移动开发者社区
18620764416
7*24全天服务
意见反馈:1294855032@qq.com

扫一扫关注我们

Powered by X3.2北京福彩网© 2001-2019 ( )

河北快3基本走势 荣鼎彩开奖 天津福彩网 北京福彩网 吉林福彩网 青海福彩网 北京福彩网 重庆快乐十分 海南福彩中心 北京福彩网