【发布时间】:2020-11-02 00:26:51
【问题描述】:
我有一个 UIViewController,“MainViewController”-
class MainViewController: UIViewController {
@IBOutlet weak var segmentControl: UISegmentedControl!
@IBOutlet weak var userNameTextField: UITextField!
@IBOutlet weak var passwordTextField: UITextField!
@IBOutlet weak var controlButton: RoundedCornerButton!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func switchBetweenSignInAndRegisterOption(_ sender: UISegmentedControl) {
if sender.selectedSegmentIndex == 0{
self.controlButton.text = "Sign In"
}
else{
self.controlButton.text = "Register"
}
}
}
操作方法 - switchBetweenSignInAndRegisterOption(_:) 附加到 segmentControl 对象,当其 selectedSegmentIndex 更改时,我的 RoundedCornerButton 的 text 属性将更新。以下是 RoundedCornerButton 的代码-
class RoundedCornerButton: UIButton {
var text: String = "Sign In"{
didSet{
setNeedsLayout()
}
}
override func layoutSubviews() {
super.layoutSubviews()
self.layer.borderWidth = 2.0
self.layer.cornerRadius = (self.bounds.size.width * 0.025)
self.layer.borderColor = UIColor.green.cgColor
self.setTitle(text, for: .normal)
self.titleLabel?.minimumScaleFactor = 0.50
}
}
它在功能方面有效,但在控制台中显示以下错误。我不明白可能出了什么问题。
[ProjectName][12943:1296641] Failed to set (titleText) user defined inspected property on ([ProjectName].RoundedCornerButton):
[<[ProjectName].RoundedCornerButton 0x7f8a13d0bd90> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key titleText.
任何帮助将不胜感激。
【问题讨论】:
标签: custom-controls ios13 swift5 key-value-coding