专业java、php、iOS、C++、网页设计、平面设计、网络营销、游戏开发、前端与移动开发培训机构

访客视图

  • 每个功能模块的登录视图包含以下四个控件
    • 模块图标
    • 描述文字
    • 注册按钮
    • 登录按钮
  • 特例
    • 首页有一个小的转轮图片会不停旋转

实现

  • 拖拽相关图片素材
  • 新建 HMVisitorView.swift 继承自 UIView

    ///  访客视图
    class HMVisitorView: UIView {
    
      override init(frame: CGRect) {
          super.init(frame: frame)
    
      }
    
      required init(coder aDecoder: NSCoder) {
          fatalError("init(coder:) has not been implemented")
      }
    }
    
  • HMBaseViewController 里面 懒加载 访客视图
    // MARK: - 懒加载
    /// 访客视图
    private lazy var visitorView: CZVisitorView = CZVisitorView()
    
  • 修改 setupVisitorView 函数
    // 替换根视图
    view = visitorView
    
  • 添加界面元素,懒加载控件

    • 转轮
    • 房子
    • 文字标签
    • 注册按钮
    • 登录按钮
    • 需要注意消息文字需要设置尺寸sizeToFit

      //MARK: 控件懒加载
      /// 转轮
      private lazy var iconView: UIImageView = UIImageView(image: UIImage(named: "visitordiscover_feed_image_smallicon"))
      
      /// 房子
      private lazy var homeView: UIImageView = UIImageView(image: UIImage(named: "visitordiscover_feed_image_house"))
      
      /// 文字标签
      private lazy var messageLabel: UILabel = {
        let label = UILabel()
        label.text = "关注一些人,看看有上面惊喜"
        label.textColor = UIColor.darkGray
        label.numberOfLines = 0
        label.sizeToFit()
        return label
      }()
      
      /// 注册按钮
      private lazy var registerButton: UIButton = {
        let button = UIButton()
      
        button.setTitle("注册", for: UIControlState.normal)
        button.setTitleColor(UIColor.orange, for: UIControlState.normal)
        button.setBackgroundImage(UIImage(named: "common_button_white_disable"), for: UIControlState.normal)
      
        return button
      }()
      
      /// 登录按钮
      private lazy var loginButton: UIButton = {
        let button = UIButton()
      
        button.setTitle("登录", for: UIControlState.normal)
        button.setTitleColor(UIColor.black, for: UIControlState.normal)
        button.setBackgroundImage(UIImage(named: "common_button_white_disable"), for: UIControlState.normal)
      
        return button
      }()
      
  • 添加懒加载的控件

    • 在构造方法里面添加

      // MARK: - 构造函数
      override init(frame: CGRect) {
        super.init(frame: frame)
        backgroundColor = UIColor.brown
      
        setupUI()
      }
      
      // MARK: - 准备UI
      private func setupUI() {
        // 添加子控件
        addSubview(iconView)
        addSubview(homeView)
        addSubview(messageLabel)
        addSubview(registerButton)
        addSubview(loginButton)
      }
      

results matching ""

    No results matching ""