Ios Swift:从另一个类调用函数

Ios Swift:从另一个类调用函数,ios,swift,class,Ios,Swift,Class,虽然我在网上看到了其他的例子。他们似乎都不为我工作。我正试图通过从ViewController调用PinPadView类来取消隐藏它。如有任何建议,将不胜感激 class ViewController: UIViewController, UIWebViewDelegate { func initPinLogin() { //Display the Pin Pad object in App PinPadView.loadPinPad() }

虽然我在网上看到了其他的例子。他们似乎都不为我工作。我正试图通过从ViewController调用PinPadView类来取消隐藏它。如有任何建议,将不胜感激

class ViewController: UIViewController, UIWebViewDelegate {

    func initPinLogin() {
        //Display the Pin Pad object in App
        PinPadView.loadPinPad()
    }

}

class PinPadView: UIView {

    class func loadPinPad() {
        let pinPad:PinPadView = PinPadView()
        pinPad.hidden = false
    }
}
编辑:


我已经回答了下面的问题。这是一个新手的错误,但对于那些有类似问题并想看看我做了什么的人来说,它就在那里。

您正在创建该对象的新实例

let pinPad:PinPadView = PinPadView()
你没有藏起来

而是引用要在VC类中隐藏的对象。

请尝试:

class ViewController: UIViewController, UIWebViewDelegate {

    func initPinLogin() {
        let pinPad:PinPadView = PinPadView()
        pinPad.loadPinPad()
    }

}

class PinPadView: UIView {

    class func loadPinPad() {
        self.hidden = false
    }
}

感谢大家的投入。我已经明白我想做什么了。我不必从另一个类调用函数,而是在ViewController中创建一个出口

@IBOutlet weak var pinPad: PinPadView!
在我做到这一点之后,我很容易就能做到这一点

func initPinLogin() {
    //Display the Pin Pad object in App
    pinPad.hidden = false

}
loadPinPad()
不应是类方法。另外,
loadPinPad
initPinLogin()
结束后将被解除分配。