gpt4 book ai didi

objective-c - 这将如何从 Obj-C 转换为 Swift?

转载 作者:行者123 更新时间:2023-11-28 09:04:21 24 4
gpt4 key购买 nike

我正在尝试用 swift 重写一个目前在 Objective-C 中的应用程序。我如何将这一行更改为 Swift,因为我当前的尝试未证明是正确的

Tabata *tabata = [notification object];

这是整个函数:

- (void)stateChanged:(NSNotification*)notification
{
if (enabled)
{
Tabata *tabata = [notification object];
switch (tabata.getState) {
case EXERCISE:
case RELAXATION:
[player play];
break;

default:
break;
}
}
}

下面是我转换成 Swift 的内容:

func stateChanged(notifcation: NSNotification) {
if enabled {

var tabata: Tabata! = notification.object //error "Use of unresolved identifier 'notification'"
switch tabata.getState() {
case .EXERCISE: fallthrough
case .RELAXATION:
player.play()
break

default:
break

}
}
}

最佳答案

在 Swift 中,你必须向下转型 AnyObject 类型的对象,而不是声明类型

   var tabata = notification.object as! Tabata

关于objective-c - 这将如何从 Obj-C 转换为 Swift?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31165974/

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