Все,Делегат потери View Controller объектов быстры
Я создал протокол, а контроллер представления является делегатом этого протокола, например, так:
import Foundation
protocol PayButtonProtocol {
func enablePayButton()
func disablePayButton()
}
И контроллер мнение делегат :
class ViewController: UIViewController, PayButtonProtocol
протокол функции следующим образом:
func enablePayButton() {
println("Button enabled")
PAYBarButton.enabled = false
}
func disablePayButton() {
PAYBarButton.enabled = false
}
Я поставил класс и назначить делегата:
class Trigger
{
var delegate:PayButtonProtocol?
func EnablePayButton()
{
delegate?.enablePayButton()
}
}
Затем я поставил триггер для запуска функции:
let localtrigger = Trigger()
localtrigger.delegate = ViewController()
localtrigger.EnablePayButton()
Это работает и «кнопка включена» отображается в консоли. Но кнопка «Бар» (PAYBarButton) равна нулю, и кажется, что контроллер просмотра потерял свою иерархию, поскольку я не могу получить доступ к каким-либо объектам контроллеров представлений. Контроллер просмотра был создан с помощью построителя интерфейса. У кого-нибудь есть идеи? Это
localtrigger.delegate = ViewController()
, который перестраивает viewconotroller и делает оригинал недоступным? Если да, то как мне это сделать?