以编程方式 UISlider 不改变宽度
A programmatically UISlider not changing width
我的 swift 代码都是代码,没有故事板。当值更改时,我的滑块 sx 应该更改 imagview 的宽度。这没有发生,图像视图上看不到任何变化。当滑块值改变时,图像视图应该增加/减少。
import UIKit
class ViewController: UIViewController {
var sx = UISlider()
var pic = UIImageView()
var ww = 80
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
[sx,pic].forEach{
[=10=].translatesAutoresizingMaskIntoConstraints = false
view.addSubview([=10=])
[=10=].backgroundColor = UIColor.systemPink
}
pic.frame = CGRect(x: view.center.x-115, y: view.center.y-200, width: CGFloat(ww), height: 50)
sx.frame = CGRect(x: view.center.x-115, y: view.center.y + 200, width: 80, height: 50)
sx.addTarget(self, action: #selector(ji), for: .valueChanged)
}
@objc func ji(sender : UISlider){
ww = Int(sx.value)
}
}
ji
中的重置帧函数作为 viewDidLoad
中的代码不会再次触发它仅在加载 vc 时调用一次
@objc func ji(sender : UISlider){
ww = Int(sx.value)! * 80
pic.frame = CGRect(x: view.center.x-115, y: view.center.y-200, width: CGFloat(ww), height: 50)
}
我的 swift 代码都是代码,没有故事板。当值更改时,我的滑块 sx 应该更改 imagview 的宽度。这没有发生,图像视图上看不到任何变化。当滑块值改变时,图像视图应该增加/减少。
import UIKit
class ViewController: UIViewController {
var sx = UISlider()
var pic = UIImageView()
var ww = 80
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
[sx,pic].forEach{
[=10=].translatesAutoresizingMaskIntoConstraints = false
view.addSubview([=10=])
[=10=].backgroundColor = UIColor.systemPink
}
pic.frame = CGRect(x: view.center.x-115, y: view.center.y-200, width: CGFloat(ww), height: 50)
sx.frame = CGRect(x: view.center.x-115, y: view.center.y + 200, width: 80, height: 50)
sx.addTarget(self, action: #selector(ji), for: .valueChanged)
}
@objc func ji(sender : UISlider){
ww = Int(sx.value)
}
}
ji
中的重置帧函数作为 viewDidLoad
中的代码不会再次触发它仅在加载 vc 时调用一次
@objc func ji(sender : UISlider){
ww = Int(sx.value)! * 80
pic.frame = CGRect(x: view.center.x-115, y: view.center.y-200, width: CGFloat(ww), height: 50)
}