不能得到这个checkbox来build立?
我试图解决其他错误,所以它可能看起来有点不同,但这是我能做的最好的。
override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() Box49.setImage(#imageLiteral(resourceName: "UnCheckBox"), for: .normal) Box49.setImage(#imageLiteral(resourceName: "CheckBox"), for: .selected) Box50.setImage(#imageLiteral(resourceName: "UnCheckBox"), for: .normal) Box50.setImage(#imageLiteral(resourceName: "CheckBox"), for: .selected) Box51.setImage(#imageLiteral(resourceName: "UnCheckBox"), for: .normal) Box51.setImage(#imageLiteral(resourceName: "CheckBox"), for: .selected) } @IBAction func Box49(_ sender: UIButton) { sender.isSelected = !(sender as AnyObject).isSelected } @IBAction func Box50(_ sender: UIButton) { sender.isSelected = !(sender as AnyObject).isSelected } @IBAction func Box51(_ sender: UIButton) { sender.isSelected = !(sender as AnyObject).isSelected }
首先,您需要创build3个button,因为您正在将图像设置为button操作,所以要么在界面构build器中设置所选图像和正常图像,要么像下面那样创build3button出口。
@IBOutlet var box49: UIButton! @IBOutlet var box50: UIButton! @IBOutlet var box51: UIButton!
现在将图像设置为Button中的viewDidLoad或viewDidAppear
不在AnyObject
,也不需要将发件人转换为AnyObject
来访问isSelected
属性,因为发件人types是UIButton
,因此您可以直接访问isSelected
属性。
var BoxOFF = #imageLiteral(resourceName: "UnCheckBox") var BoxON = #imageLiteral(resourceName: "CheckBox") override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) box49.setImage(BoxOFF, for: .normal) box49.setImage(BoxON, for: .selected) box50.setImage(BoxOFF, for: .normal) box50.setImage(BoxON, for: .selected) box51.setImage(BoxOFF, for: .normal) box51.setImage(BoxON, for: .selected) }
现在用这种方法设置你的button动作。
@IBAction func Box49(_ sender: Button) { sender.isSelected = !sender.isSelected } @IBAction func Box50(_ sender: Button) { sender.isSelected = !sender.isSelected } @IBAction func Box51(_ sender: Button) { sender.isSelected = !sender.isSelected }
override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() }
上述方法在内存不足的情况下调用,需要释放资源。
所以你需要从上面的方法代码添加到viewDidAppear
或viewWillAppear
。
所以replace下面的代码:
override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) Box49.setImage(#imageLiteral(resourceName: "UnCheckBox"), for: .normal) Box49.setImage(#imageLiteral(resourceName: "CheckBox"), for: .selected) Box50.setImage(#imageLiteral(resourceName: "UnCheckBox"), for: .normal) Box50.setImage(#imageLiteral(resourceName: "CheckBox"), for: .selected) Box51.setImage(#imageLiteral(resourceName: "UnCheckBox"), for: .normal) Box51.setImage(#imageLiteral(resourceName: "CheckBox"), for: .selected) }
另一个改进就是replace你的代码
sender.isSelected = !(sender as AnyObject).isSelected
同
sender.isSelected = !sender.isSelected
- 计算Swiftstring的大小(以字节为单位)
- 在AVMutableComposition中使用AVMutableCompositionTrack合并video和图像,而不是AVVideoCompositionCoreAnimationTool?
- 我如何重构我的代码在主线程上调用AppDelegate?
- 如何在Swift 3中使用UnsafeMutablePointer?
- 如何更改datepicker当前date的文本颜色?
- 在Collectionview中如何根据select设置颜色?
- 返回Alamofireclosures布尔
- AFHTTPSessionManager子类swift
- UIView阴影,cornerradius不工作