将 typedef 转换为 Swift
Convert typedef to Swift
如何将此代码转换为 Swift
typedef UIViewController<CalendarViewControllerNavigation> CalendarViewController;
试图到处寻找解决方案,但似乎找不到对此的参考。
我在使用来自 https://github.com/jumartin/Calendar 的日历库时遇到了同样的问题。
我已经解决了这个问题,如下所示。
protocol CalendarViewControllerNavigation: NSObjectProtocol {
func move(to date: Date, animated: Bool)
}
typealias CalendarTypeController = UIViewController
extension CalendarTypeController:CalendarViewControllerNavigation{
internal func move(to date: Date, animated: Bool) {
}
internal func deviceIsRotated() {
}
internal func selectedEventForAddSession(event:EventDetail) {
}
}
protocol CalenderViewControllerDelegate : NSObjectProtocol {
func calendarViewController(_ controller:CalendarTypeController, showDate:NSDate)
}
希望这段代码对您有所帮助!
在Swift4中你可以使用:
typealias CalendarViewController = UIViewController & CalendarViewControllerNavigation
其中使用了新的protocol composition type。
另见 SE-156.
如何将此代码转换为 Swift
typedef UIViewController<CalendarViewControllerNavigation> CalendarViewController;
试图到处寻找解决方案,但似乎找不到对此的参考。
我在使用来自 https://github.com/jumartin/Calendar 的日历库时遇到了同样的问题。
我已经解决了这个问题,如下所示。
protocol CalendarViewControllerNavigation: NSObjectProtocol {
func move(to date: Date, animated: Bool)
}
typealias CalendarTypeController = UIViewController
extension CalendarTypeController:CalendarViewControllerNavigation{
internal func move(to date: Date, animated: Bool) {
}
internal func deviceIsRotated() {
}
internal func selectedEventForAddSession(event:EventDetail) {
}
}
protocol CalenderViewControllerDelegate : NSObjectProtocol {
func calendarViewController(_ controller:CalendarTypeController, showDate:NSDate)
}
希望这段代码对您有所帮助!
在Swift4中你可以使用:
typealias CalendarViewController = UIViewController & CalendarViewControllerNavigation
其中使用了新的protocol composition type。 另见 SE-156.