在正确设置委托后,委托找到了Nil

时间:2016-05-03 12:52:32

标签: ios swift uicollectionview

在我的StrechyHeaderLayout课程中,我正在创建一个协议。

protocol StrechyHeaderLayoutDelegate : class {        
    func manipulateHeaderView(sender: StrechyHeaderLayout)        
}

在本课程中,我宣布代表。

var delegate : StrechyHeaderLayoutDelegate?

我在ScheduleViewController课程中使用此协议。 我正在创建一个变量StrechyHeaderLayoutObj作为类全局变量

class ScheduleViewController: UICollectionViewController,StrechyHeaderLayoutDelegate {
   let StrechyHeaderLayoutObj = StrechyHeaderLayout()
   ...
}

我正在viewDidLoad()

中分配代理人
StrechyHeaderLayoutObj.delegate = self

正在设置委托,但在调用StrechyHeaderLayout时,会找到委托nil

我正在尝试访问此方法中的委托

   override func layoutAttributesForElementsInRect(rect: CGRect) -> [UICollectionViewLayoutAttributes]? {    
           delegate!.manipulateHeaderView(self)
   }

但它抛出了错误: 致命错误:在解包可选值时意外发现nil

0 个答案:

没有答案