加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift3.0知识点:高度模仿斗鱼TV(一)

发布时间:2020-12-14 06:39:13 所属栏目:百科 来源:网络整理
导读:为什么要模仿斗鱼? 直播越来越火,人们越来越喜欢秀场与游戏直播,而斗鱼囊括了秀场和游戏直播,并且是当下最火的直播平台。 斗鱼的界面多样化,功能上也包括了“秀
  • 为什么要模仿斗鱼?
    • 直播越来越火,人们越来越喜欢秀场与游戏直播,而斗鱼囊括了秀场和游戏直播,并且是当下最火的直播平台。
    • 斗鱼的界面多样化,功能上也包括了“秀场”、“游戏直播”、“即时聊天”、“送礼物”、“弹幕”等等热门技术,很值得研究。
  • 为什么要使用Swift进行模仿?
    • 苹果大力推广Swift,国外教学语言也已经完全使用Swift教学,这是未来的趋势。
    • 今年语言排行榜上,Swift的使用量已经超过OC。
    • Swift更快,更简洁,更安全,更优雅。
  • 我技术很菜,如何开始?
    • iOS大神why正在更新斗鱼的模仿教学,我也是抱着大腿走。
    • 感谢why大神的教学!要上车的童鞋们赶紧了。
    • why大神的gitHub斗鱼源码:https://github.com/coderwhy/DouYuZB

  • 本人gitHub斗鱼代码:https://github.com/Rain-dew/DouYuZhiBo
  • 项目搭建:根控制器用TabViewController,每个自控制器嵌套导航,并且很多页面再嵌套pageViewController
  1. 首页技术
    1. 1 原控件的扩展-->首页右上角搜索按钮、扫一扫按钮
      1. 创建一个Swift File 空文件,作为UIBarButtonItem的扩展文件,代码如下:??????
    2. extension UIBarButtonItem {
      
          convenience init(imageName: String,hightImageName : String = "",size : CGSize = CGSize.zero) {
      
              // 1.创建UIButton
              let btn = UIButton()
      
              // 2.设置btn的图片
              btn.setImage(UIImage(named: imageName),for: UIControlState())
              if hightImageName != "" {
                  btn.setImage(UIImage(named: hightImageName),for: .highlighted)
              }
      
              // 3.设置btn的尺寸
              if size == CGSize.zero {
                  btn.sizeToFit()
              } else {
                  btn.frame = CGRect(origin: CGPoint.zero,size: size)
              }
      
              // 4.创建UIBarButtonItem
              self.init(customView : btn)
      
          }
      
      }

      格式:extension : 扩展对象 convenience init() 重写构造函数,默认参数写法 : 字符串 = "" ,默认参数的好处:如果不需要这个参数则可以不填写,让方法更简洁、灵活。例如以上代码如果你不需要高亮图片,也不需要size,那么直接这样调用:

      navigationItem.leftBarButtonItem = UIBarButtonItem(imageName: "logo")

      2.pageController的封装

      1. 分为titleView和contentView两部分封装。

        • TitleView:待续

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读