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

SnapKit代码布局登录示例

发布时间:2020-12-14 06:06:51 所属栏目:百科 来源:网络整理
导读:登录页面布局 效果图 代码 //// LoginController.swift//// Created by 雷神 on 2017/9/14.// Copyright ? 2017年 aso.ren. All rights reserved.//import UIKitimport SnapKitclass LoginController: UIViewController,UITextFieldDelegate { var txtUser:

登录页面布局

效果图

代码

//
//  LoginController.swift
//
//  Created by 雷神 on 2017/9/14.
//  Copyright ? 2017年 aso.ren. All rights reserved.
//

import UIKit
import SnapKit

class LoginController: UIViewController,UITextFieldDelegate {

    
    var txtUser: UITextField! //用户名输入框
    var txtPwd: UITextField! //密码输入款
    var formView: UIView! //登陆框视图
    var horizontalLine: UIView! //分隔线
    var confirmButton:UIButton! //登录按钮
    var titleLabelOne: UILabel! //标题标签
    var titleLabelTwo: UILabel! //标题标签
    
    var topConstraint: Constraint? //登录框距顶部距离约束
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        //视图背景色
         self.view.backgroundColor = UIColor(red: 61/255,green: 66/255,blue: 78/255,alpha: 100)
        
        //登录框高度
        let formViewHeightWidth = 280
        //登录框背景
        self.formView = UIView()
        self.formView.layer.borderWidth = 0.5
        self.formView.layer.borderColor = UIColor.lightGray.cgColor
        self.formView.backgroundColor = UIColor.white
        self.formView.layer.cornerRadius = 5
        self.view.addSubview(self.formView)
        //最常规的设置模式
        self.formView.snp.makeConstraints { (make) -> Void in
            make.left.equalTo(15)
            make.right.equalTo(-15)
            //存储top属性
            self.topConstraint = make.centerY.equalTo(self.view).constraint
            make.height.width.equalTo(formViewHeightWidth)
        }
        
        
        
        //标题一
        self.titleLabelOne = UILabel()
        self.titleLabelOne.text = "Log in to"
        self.titleLabelOne.textColor = UIColor.black
        self.titleLabelOne.font = UIFont.systemFont(ofSize: 20)
        self.formView.addSubview(self.titleLabelOne)
        self.titleLabelOne.snp.makeConstraints { (make) -> Void in
            make.centerX.equalTo(self.formView)
            make.height.equalTo(24)
            make.top.equalTo(self.formView.snp.top).offset(15)

        }
        
        //标题二
        self.titleLabelTwo = UILabel()
        self.titleLabelTwo.text = "Designer News"
        self.titleLabelTwo.textColor = UIColor.black
        self.titleLabelTwo.font = UIFont.systemFont(ofSize: 30)
        self.formView.addSubview(self.titleLabelTwo)
        self.titleLabelTwo.snp.makeConstraints { (make) -> Void in
            make.centerX.equalTo(self.formView)
            make.height.equalTo(34)
            make.top.equalTo(self.titleLabelOne.snp.top).offset(25)
            
        }
        
        
        //用户名图标
        let imgIconMail =  UIImageView(frame:CGRect(x: 11,y: 11,width: 26,height: 18))
        imgIconMail.image = UIImage(named:"icon-mail")
        
        //用户名输入框
        self.txtUser = UITextField()
        self.txtUser.delegate = self
        self.txtUser.placeholder = "Email"
        self.txtUser.tag = 100
        self.txtUser.borderStyle=UITextBorderStyle.roundedRect
        self.txtUser.leftView = UIView(frame:CGRect(x: 0,y: 0,width: 44,height: 44))
        self.txtUser.leftViewMode = UITextFieldViewMode.always
        self.txtUser.returnKeyType = UIReturnKeyType.next
        
        
        //用户名左侧图标布局设置
        self.txtUser.leftView!.addSubview(imgIconMail)
        self.formView.addSubview(self.txtUser)
        
        //布局
        self.txtUser.snp.makeConstraints { (make) -> Void in
            make.left.equalTo(15)
            make.right.equalTo(-15)
            make.height.equalTo(44)
            make.top.equalTo(self.titleLabelTwo.snp.bottom).offset(20)
        }
        
        
        //密码图标
        let imgIconPwd =  UIImageView(frame:CGRect(x: 11,width: 25,height: 25))
        imgIconPwd.image = UIImage(named:"icon-password")
        
        //密码输入框
        self.txtPwd = UITextField()
        self.txtPwd.delegate = self
        self.txtPwd.placeholder = "Password"
        self.txtPwd.tag = 101
        self.txtPwd.borderStyle=UITextBorderStyle.roundedRect
        self.txtPwd.leftView = UIView(frame:CGRect(x: 0,height: 44))
        self.txtPwd.leftViewMode = UITextFieldViewMode.always
        self.txtPwd.returnKeyType = UIReturnKeyType.next
        
        //密码框左侧图标布局
        self.txtPwd.leftView!.addSubview(imgIconPwd)
        self.formView.addSubview(self.txtPwd)
        
        //布局
        self.txtPwd.snp.makeConstraints { (make) -> Void in
            make.left.equalTo(15)
            make.right.equalTo(-15)
            make.height.equalTo(44)
            make.top.equalTo(self.txtUser.snp.bottom).offset(20)
        }
    
        
        //登录按钮
        self.confirmButton = UIButton()
        self.confirmButton.setTitle("Log in",for: UIControlState())
        self.confirmButton.setTitleColor(UIColor.white,for: UIControlState())
        self.confirmButton.layer.cornerRadius = 5
        self.confirmButton.backgroundColor = UIColor(red: 44/255,green: 99/255,blue: 210/255,alpha: 100)

        
        self.view.addSubview(self.confirmButton)
        self.confirmButton.snp.makeConstraints { (make) -> Void in
            make.left.equalTo(35)
            make.right.equalTo(-35)
            make.height.equalTo(44)
            make.top.equalTo(self.txtPwd.snp.bottom).offset(20)
        }

    }
  

}

(编辑:李大同)

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

    推荐文章
      热点阅读