gpt4 book ai didi

ios - 如何将 Controller 转换为特定协议(protocol)而不是 Swift 中的类?

转载 作者:搜寻专家 更新时间:2023-11-01 06:46:02 25 4
gpt4 key购买 nike

这是我的协议(protocol):

protocol DBViewAnimationTransitioning {
var viewForAnimation: UIView? { get set }
}

prepareForSegue: 中的用法示例:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if let controller = segue.destinationViewController as? DBViewAnimationTransitioning {
controller.viewForAnimation = sender as? UIView //cannot assign to to viewForAnimation in controller
}
}

当我转换到特定的 Controller 时,一切都很好。 DBFindViewController。但我需要将其转换为特定的 protocol 而不是 class。如何实现?

最佳答案

因为该协议(protocol)不是专门针对类/结构的,所以它不能分配某些东西,因为它可能是一个没有意义的结构,因为它被复制了。尝试通过将其声明为 protocol DBViewAnimationTransitioning : class

使其成为类协议(protocol)

关于ios - 如何将 Controller 转换为特定协议(protocol)而不是 Swift 中的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30828087/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com