我已经用它的class(.Swift)创建了一个CustomView(.Xib)
。
为了达到它的views(widgets)属性,我定义了几个getter和setter,现在我需要调用它们进行修改,但是当我从类中创建一个对象时,我无法修改属性或使用get {}
方法。
这是我自定义的类视图代码:
CustomClass.Swift
@IBOutlet weak var barLbl: UILabel!
@IBDesignable class CustomControl: UIView {
@IBInspectable var lblSetGetName : String! {
set { barLbl.text = newValue }
get { return barLbl.text }
}
在另一个视图控制器中,我无法实现获取和设置视图:
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let CustomControlObj : CustomControl!
var lblName = CustomControlObj.lblSetGetName
CustomControlObj.lblSetGetName = "New Txt"
}
在这里,在另一个视图控制器类中,编译器说:
Constant 'CustomControlObj' used before being initialized
。 最佳答案
你可以这样加载
let customControlObj = (Bundle.main.loadNibNamed("CustomView", owner: self, options: nil))?[0] as! CustomControl
customControlObj.frame = view.frame
customControlObj.lblSetGetName = "New Txt"
view.addSubview(customControlObj)
关于ios - 使用另一个 View Controller 中的setter getter,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51408160/