【项目一 · 直播】 ☞ 1. 搭建项目框架

时间:2021-07-21 04:25:21

一、创建项目目录

创建工程的时候规定一下目录,规定目录就是规定自己的架构,结构层次分明,方便查找。

创建Classes目录(里面放自定义类),继续在该目录下创建:

  1. Define:定义宏
  2. Base:基础模块(继承基础类,方便进行全局设置)
  3. NetWork(NetManager):网络工具
  4. Show:展示模块,主要负责展示
    • View:视图层

    • ViewController:控制器层

    • Model:模型层

    • Handler:业务处理层,专门处理网络请求和数据解析,目的是减轻ViewController的重量。

  5. Live:播放直播模块

  6. Me:我的模块

  7. Launch:播放模块

  8. Helper:工具模块

    • Tools:真正的工具(如,用户的工具、缓存的工具)

    • Category:类别

  9. Resource:资源文件
  10. Vendor(Lib):第三方类库
  11. Other:其它(放代理类、宏)

二、集成CocoaPods

  1. cd 到工程目录,pod init 生成Podfile文件

  2. 导入常用的第三方库:

    1》先搜索要用的第三方库:pod search '第三方库'

  【项目一 · 直播】 ☞ 1. 搭建项目框架

  2》复制导入最新版本的指令

【项目一 · 直播】 ☞ 1. 搭建项目框架

  【项目一 · 直播】 ☞ 1. 搭建项目框架

      同理导入其它第三方库:

        pod 'SDWebImage', '~> 3.8.1'
        pod 'Masonry', '~> 1.0.1'
        pod 'YYKit', '~> 1.0.7'   

        ... ...  ... ...

   3. 执行 pod install

第三方框架 YYKit

  YYKit 是一组庞大、功能丰富的 iOS 组件。主要包括以下组件:

  【项目一 · 直播】 ☞ 1. 搭建项目框架

三、配置pch文件

配置pch,不然其它电脑找不到。

  在Build Settings下搜索Prefix Header,添加.pch文件的路径:

    绝对路径:$(SRCROOT)/$(PRODUCT_NAME)/PrefixHeader.pch

    相对路径:$(PRODUCT_NAME)/PrefixHeader.pch

四、配置图标和启动页

1. 配置应用图标

  【项目一 · 直播】 ☞ 1. 搭建项目框架

2. 配置启动页

   【项目一 · 直播】 ☞ 1. 搭建项目框架

   【项目一 · 直播】 ☞ 1. 搭建项目框架

   【项目一 · 直播】 ☞ 1. 搭建项目框架

   【项目一 · 直播】 ☞ 1. 搭建项目框架

   【项目一 · 直播】 ☞ 1. 搭建项目框架

   【项目一 · 直播】 ☞ 1. 搭建项目框架

  到此大功告成!

  提示:如果启动图片还没出现,请检查一下图片尺寸是否有放错,如果没有错再卸载APP重新运行安装即可看到效果。

五、设置类名前缀和定义常用宏

1. 设置自定义类的前缀

  【项目一 · 直播】 ☞ 1. 搭建项目框架

2. 定义常用宏

【项目一 · 直播】 ☞ 1. 搭建项目框架

六、自定义TabBar

设置navigationBar的颜色:

【项目一 · 直播】 ☞ 1. 搭建项目框架

设置TabBar的点击动画:

【项目一 · 直播】 ☞ 1. 搭建项目框架

七、创建首页UI

1. 创建主控制器(即容器控制器)、设置contentView

  1)在主控制器(MainViewController)的视图view上添加一个scrollView滚动视图。

  2)添加子视图控制器,让主控制器(MainViewController)去管理这些子视图控制器。

  3)考虑一个问题:什么时候把子控制器的view加到主控制器的scrollView上?

    是滑动scrollView视图的时候进行添加,滑动一次加一次,把不同的自控制的view加到主控制器的scrollView上。

2. 创建顶部滑动菜单视图(自定义 BRSlideMenuView)

3. 设置顶部滑动菜单按钮的点击事件

4.  设置滑动菜单和scrollView联动

注意:

1. 设置scrollView可以分页,是分页滑动。

【项目一 · 直播】 ☞ 1. 搭建项目框架

2. 设置scrollView的代理(self.scrollView = self)

【项目一 · 直播】 ☞ 1. 搭建项目框架

 八、网络数据解析

1. 接口管理

  定义 APIConfig.h 宏文件

  封装网络工具 HttpTool.h / HttpTool.m

2. 构建网络处理层

  在Handle层写网络请求和数据解析。

3. 数据解析

4. 给cell赋值数据