swift_01_自动布局
前言:
开发环境:xcode11+swift5
知识点:
1.snap自动布局
2.计时器的使用
import UIKit import SnapKit class ViewController: UIViewController { var result:UILabel! var timer:Timer! var lableNumber:Double = 0 override func viewDidLoad() { super.viewDidLoad() let startView = UIView() result = UILabel() self.view.addSubview(result) result.textColor = UIColor.blue result.text = "0" result.textAlignment = NSTextAlignment.center result.backgroundColor = UIColor.yellow result.snp.makeConstraints { (make) in make.width.equalTo(100) make.height.equalTo(50) make.centerX.equalTo(self.view.snp.centerX) make.top.equalTo(100) } startView.backgroundColor = UIColor.init(red: 1, green: 101/255.0, blue: 27/255.0, alpha: 1) self.view.addSubview(startView) startView.snp.makeConstraints { (make) in make.top.equalTo(self.view).offset(300) make.left.equalTo(self.view).offset(0) make.bottom.equalTo(self.view).offset(0) make.width.equalTo(self.view.frame.width / 2) } let startButton:UIButton = UIButton() startButton.setTitle("Start", for: .normal) startView.addSubview(startButton) startButton.snp.makeConstraints { (make) in make.center.equalTo(startView) make.width.height.equalTo(50) } startButton.addTarget(self, action: #selector(startHandler), for: .touchUpInside) let endView = UIView() endView.backgroundColor = UIColor.init(red: 98/255.0, green: 242/255.0, blue: 23/255.0, alpha: 1) self.view.addSubview(endView) endView.snp.makeConstraints { (make) in make.top.equalTo(self.view).offset(300) make.right.equalTo(self.view).offset(0) make.width.equalTo(self.view.frame.width / 2) make.bottom.equalTo(self.view).offset(0) } let endButton:UIButton = UIButton() endButton.setTitle("End", for: .normal) endView.addSubview(endButton) endButton.snp.makeConstraints { (make) in make.center.equalTo(endView).offset(0) make.width.height.equalTo(50) } endButton.addTarget(self, action: #selector(stopHandler), for: .touchUpInside) let resetButton = UIButton() self.view.addSubview(resetButton) resetButton.snp.makeConstraints { (make) in make.top.equalTo(10) make.right.equalTo(-10) make.width.equalTo(100) make.height.equalTo(50) } resetButton.setTitleColor(UIColor.blue, for: .normal) resetButton.setTitle("Reset", for: .normal) resetButton.addTarget(self, action: #selector(resetHandler), for: .touchUpInside) } @objc func startHandler(){ if self.timer != nil { self.stopHandler() } self.timer = Timer.scheduledTimer(withTimeInterval: 0.1, repeats: true) { (Timer) in self.lableNumber = self.lableNumber + 0.1 self.result.text = String(format: "%.1f", self.lableNumber) } self.timer.fire() } @objc func stopHandler(){ guard let timerForDistory = self.timer else {return} timerForDistory.invalidate() } @objc func resetHandler(){ self.lableNumber = 0 self.result.text = "0" } }
浙公网安备 33010602011771号