我想在Swift 4中更改UISwitch的默认大小。
我已经查看了各种选项,但它们都与v3有关,但不起作用。
有人可以建议一个在Swift 4中以编程方式执行此操作的示例吗?
谢谢,
编辑:
我尝试了以下示例:
switchTest.transform = CGAffineTransformMakeScale(0.75, 0.75)
switchTest.transform = CGAffineTransform(scaleX: 0.75, y: 0.75)
UISwitch *switchTest = [UISwitch new];
switchTest.transform = CGAffineTransformMakeScale(0.75, 0.75);
我收到的错误消息始终相同,并说明了这一点:
预期声明
答案 0 :(得分:10)
Swift 4 Code
方法1
拖动UISwitch Storyboard。制作UISwitch的插座,并用此代码替换ViewDidLoad方法。
@IBOutlet weak var switchDemo: UISwitch!
override func viewDidLoad() {
super.viewDidLoad()
switchDemo.transform = CGAffineTransform(scaleX: 0.75, y: 0.75)
}
方法2
通过编程方式制作UISwitch。
class ViewController: UIViewController {
let switchSwift4 = UISwitch(frame:CGRect(x: 150, y: 300, width: 0, height: 0))
override func viewDidLoad() {
super.viewDidLoad()
self.switchSwift4.isOn = true
switchSwift4.setOn(true, animated: false)
switchSwift4.addTarget(self, action: #selector(switchValueDidChange(_:)), for: .valueChanged)
switchSwift4.transform = CGAffineTransform(scaleX: 0.75, y: 0.75)
self.view!.addSubview(switchSwift4)
}
@objc func switchValueDidChange(_ sender: UISwitch) {
if switchSwift4.isOn == true {
print("On")
}
else {
print("Off")
}
}
}