override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let rect = CGRect(x: 80, y: 100, width: 100, height: 30)//创建一个现实区域
let label = UILabel(frame: rect)//初始化标签对象并设置其位置和尺寸
label.text = "0"//设置标签对象的默认文字
label.tag = 1//设置标签对象的标志值,方便再次调用
self.view.addSubview(label)//将标签对象添加到当前视图控制器的根视图
let rect2 = CGRect(x: 130, y: 100, width: 0, height: 0)
let stepper = UIStepper(frame: rect2)//初始化步进对象并设置其位置和尺寸属性
stepper.sizeToFit()//设置步进对象的对象大小为自适应
stepper.value = 0//设置步进对象的默认值
stepper.minimumValue = 0//设置步进对象的最小值
stepper.maximumValue = 10//设置步进对象的最大值
stepper.stepValue = 1//设置步进对象每次递增或递减的值
//给步进对象添加状态变化事件
stepper.addTarget(self, action: #selector(ViewController.valueChanged(_:)), for: UIControlEvents.valueChanged)
self.view.addSubview(stepper)//将步进对象添加到当前视图控制器的根视图
}
@objc func valueChanged(_ stepper:UIStepper) {
let value = stepper.value//获得步进对象的值
let label = self.view.viewWithTag(1) as! UILabel//通过标识值,获得根视图下的标签对象
label.text = "\(value)"//设置标签对象的文本内容
}