我已经用它的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/

10-10 23:12