2015-12-29 4 views
-3

Итак, пока я вижу другие примеры этого онлайн. Никто из них, похоже, не работает для меня. Я пытаюсь отобразить свой класс PinPadView, вызвав его из ViewController. Любые предложения будут ценны.Swift: вызов функции из другого класса

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 
    } 
} 

Edit:

Я ответил на мой вопрос ниже. Это была ошибка новичка, но для тех, у кого похожие проблемы, и я хочу посмотреть, что я сделал, она есть.

ответ

1

Вы создаете новый экземпляр объекта

let pinPad:PinPadView = PinPadView() 

, которые вы снимите скрытие.

Вместо этого укажите объект, который вы хотите скрыть от своего класса VC.

-1

Try тис:

class ViewController: UIViewController, UIWebViewDelegate { 

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

} 

class PinPadView: UIView { 

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

'loadPinPad()' не должен быть классным методом. Также 'loadPinPad' будет освобожден после того, как' initPinLogin() 'достигнет своего конца. – vikingosegundo

0

Спасибо всем за вход. Я понял, что я пытаюсь сделать. Я не должен вызвать функцию из другого класса, а создать выход в ViewController

@IBOutlet weak var pinPad: PinPadView! 

после того, как я сделал это, я был очень легко в состоянии сделать это

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

} 
Смежные вопросы