Advertisement
Guest User

Untitled

a guest
Apr 6th, 2020
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Swift 6.99 KB | None | 0 0
  1. //
  2. //  LoginView.swift
  3. //  AuthTableTestAPP
  4. //
  5. //  Created by Владислав Лазарев on 04.02.2020.
  6. //  Copyright © 2020 Владислав Лазарев. All rights reserved.
  7. //
  8.  
  9. import UIKit
  10.  
  11. class LoginView: UIView {
  12.     let titleLabel = UILabel()
  13.     let imageButton = UIButton()
  14.     var nameTextField = LoginTextField()
  15.     var dateView = UIView()
  16.     let dateLabel = UILabel()
  17.     let dateButton = UIButton()
  18.     let sexLabel = UILabel()
  19.     let womanButton = UIButton()
  20.     let manButton = UIButton()
  21.     let saveButton = UIButton()
  22.    
  23.     let stackView = UIStackView()
  24.     private var installed = false
  25.    
  26.     override init(frame: CGRect) {
  27.         super.init(frame: frame)
  28.         commonInit()
  29.     }
  30.    
  31.     override func layoutSubviews() {
  32.        
  33.     }
  34.    
  35.     required init?(coder aDecoder: NSCoder) {
  36.         super.init(coder: aDecoder)
  37.         commonInit()
  38.     }
  39.    
  40.     private func commonInit() {
  41.         titleLabel.textColor = .black
  42.         titleLabel.font = UIFont(name: "Thonburi-Bold", size: 30)
  43.         titleLabel.text = "Новый ребенок"
  44.         titleLabel.translatesAutoresizingMaskIntoConstraints = false
  45.         self.addSubview(titleLabel)
  46.  
  47.         imageButton.backgroundColor = .blue
  48.         imageButton.translatesAutoresizingMaskIntoConstraints = false
  49.         imageButton.setTitle("Фото", for: .normal)
  50.         imageButton.clipsToBounds = true
  51.         imageButton.layer.cornerRadius = 65
  52.         self.addSubview(imageButton)
  53.        
  54.         nameTextField.translatesAutoresizingMaskIntoConstraints = false
  55.         nameTextField.backgroundColor = #colorLiteral(red: 0.8909720778, green: 0.9101542234, blue: 0.9358072281, alpha: 1)
  56.         nameTextField.layer.cornerRadius = 10
  57.         nameTextField.setLeftView(text: "Имя")
  58.         nameTextField.textAlignment = .right
  59.         nameTextField.placeholder = "Сильвия"
  60.         self.addSubview(nameTextField)
  61.        
  62.         dateView.translatesAutoresizingMaskIntoConstraints = false
  63.         dateView.backgroundColor = #colorLiteral(red: 0.8909720778, green: 0.9101542234, blue: 0.9358072281, alpha: 1)
  64.         dateView.layer.cornerRadius = 10
  65.         self.addSubview(dateView)
  66.        
  67.         dateLabel.text = "Дата"
  68.         dateView.addSubview(dateLabel)
  69.        
  70.         dateButton.setTitle("Выбрать", for: .normal)
  71.         dateButton.setTitleColor(.black, for: .normal)
  72.         dateView.addSubview(dateButton)
  73.        
  74.         sexLabel.text = "Пол"
  75.         sexLabel.translatesAutoresizingMaskIntoConstraints = false
  76.        
  77.         womanButton.translatesAutoresizingMaskIntoConstraints = false
  78.         womanButton.setTitle("Девочка", for: .normal)
  79.         womanButton.tintColor = .black
  80.         womanButton.setTitleColor(.black, for: .normal)
  81.         womanButton.tag = 1
  82.        
  83.         manButton.translatesAutoresizingMaskIntoConstraints = false
  84.         manButton.setTitle("Мальчик", for: .normal)
  85.         manButton.setTitleColor(.red, for: .normal)
  86.         manButton.layer.borderWidth = 1
  87.         manButton.layer.cornerRadius = 10
  88.         let color = UIColor.red
  89.         manButton.layer.borderColor = color.cgColor
  90.         manButton.tag = 2
  91.    
  92.         stackView.addArrangedSubview(sexLabel)
  93.         stackView.addArrangedSubview(womanButton)
  94.         stackView.addArrangedSubview(manButton)
  95.         stackView.axis = .horizontal
  96.         stackView.spacing = 8
  97.         stackView.distribution = .fillEqually
  98.         stackView.translatesAutoresizingMaskIntoConstraints = false
  99.         self.addSubview(stackView)
  100.        
  101.         saveButton.translatesAutoresizingMaskIntoConstraints = false
  102.         saveButton.setTitle("СОХРАНИТЬ", for: .normal)
  103.         saveButton.setTitleColor(.black, for: .normal)
  104.         saveButton.backgroundColor = #colorLiteral(red: 0.8909720778, green: 0.9101542234, blue: 0.9358072281, alpha: 1)
  105.         saveButton.layer.cornerRadius = 10
  106.         self.addSubview(saveButton)
  107.     }
  108.    
  109.     override func updateConstraints() {
  110.         if !self.installed {
  111.            self.installed = true
  112.             NSLayoutConstraint.activate([
  113.                 titleLabel.topAnchor.constraint(equalTo: self.topAnchor, constant: 50),
  114.                 titleLabel.leftAnchor.constraint(equalTo: self.leftAnchor, constant: 10),
  115.                 titleLabel.rightAnchor.constraint(equalTo: self.rightAnchor, constant: -10),
  116.                 titleLabel.heightAnchor.constraint(equalToConstant: 50),
  117.  
  118.                 imageButton.topAnchor.constraint(equalTo: titleLabel.bottomAnchor, constant: 40),
  119.                 imageButton.centerXAnchor.constraint(equalTo: self.centerXAnchor, constant: 0),
  120.                 imageButton.heightAnchor.constraint(equalToConstant: 130),
  121.                 imageButton.widthAnchor.constraint(equalToConstant: 130),
  122.                
  123.                 nameTextField.topAnchor.constraint(equalTo: imageButton.bottomAnchor, constant: 60),
  124.                 nameTextField.leftAnchor.constraint(equalTo: self.leftAnchor, constant: 20),
  125.                 nameTextField.rightAnchor.constraint(equalTo: self.rightAnchor, constant: -20),
  126.                 nameTextField.heightAnchor.constraint(equalToConstant: 50),
  127.                
  128.                 dateView.topAnchor.constraint(equalTo: nameTextField.bottomAnchor, constant: 30),
  129.                 dateView.leftAnchor.constraint(equalTo: self.leftAnchor, constant: 20),
  130.                 dateView.rightAnchor.constraint(equalTo: self.rightAnchor, constant: -20),
  131.                 dateView.heightAnchor.constraint(equalToConstant: 50),
  132.                
  133.                 dateLabel.topAnchor.constraint(equalTo: dateView.topAnchor, constant: 10),
  134.                 dateLabel.leftAnchor.constraint(equalTo: dateView.leftAnchor, constant: 10),
  135.                 dateLabel.bottomAnchor.constraint(equalTo: dateView.bottomAnchor, constant: -10),
  136.                
  137.                 dateButton.topAnchor.constraint(equalTo: dateView.topAnchor, constant: 10),
  138.                 dateButton.leftAnchor.constraint(equalTo: dateLabel.rightAnchor, constant: -50),
  139.                 dateButton.rightAnchor.constraint(equalTo: dateView.rightAnchor, constant: 10),
  140.                 dateButton.bottomAnchor.constraint(equalTo: dateView.bottomAnchor, constant: 10),
  141.                
  142.                
  143.                 stackView.topAnchor.constraint(equalTo: dateView.bottomAnchor, constant: 50),
  144.                 stackView.leftAnchor.constraint(equalTo: self.leftAnchor, constant: 20),
  145.                 stackView.rightAnchor.constraint(equalTo: self.rightAnchor, constant: -20),
  146.                
  147.                 saveButton.leftAnchor.constraint(equalTo: self.leftAnchor, constant: 20),
  148.                 saveButton.rightAnchor.constraint(equalTo: self.rightAnchor, constant: -20),
  149.                 saveButton.bottomAnchor.constraint(equalTo: self.bottomAnchor, constant: -50),
  150.                 saveButton.heightAnchor.constraint(equalToConstant: 50)
  151.  
  152.                 ])
  153.         }
  154.         super.updateConstraints()
  155.     }
  156. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement