EXC_BAD_ACCESS 与 viewWillTransitionToSize 和 Xcode 6.3

EXC_BAD_ACCESS with viewWillTransitionToSize and Xcode 6.3

此代码曾经在我们今天的扩展中工作,但现在 EXC_BAD_ACCESS 使用 Xcode 6.3。新问题是什么?

override func viewWillTransitionToSize(size: CGSize, withTransitionCoordinator coordinator: UIViewControllerTransitionCoordinator) {
    coordinator.animateAlongsideTransition({ context in
        self.tableView.frame = CGRectMake(0, 0, size.width, size.height)
        }, completion: nil)
}

有人向我提到他们认为这是一个 Apple 错误。这是一个解决方法(或解决方案):

override func viewWillTransitionToSize(size: CGSize, withTransitionCoordinator coordinator: UIViewControllerTransitionCoordinator)
{
    super.viewWillTransitionToSize(size, withTransitionCoordinator: coordinator)

    if let safeCoordinator = coordinator as UIViewControllerTransitionCoordinator?
    {
        println("coordinator != nil")
        safeCoordinator.animateAlongsideTransition({ context in
            self.tableView.frame = CGRectMake(0, 0, size.width, size.height)
            }, completion: nil)

    }
    else
    {
        println("coordinator == nil")
    }
}