gpt4 book ai didi

arrays - 上下文类型 'Any' 不能与数组文字 Swift 3 一起使用

转载 作者:搜寻专家 更新时间:2023-10-31 19:32:59 25 4
gpt4 key购买 nike

我正在尝试将我的代码 Swift 2 转换为 Swift 3,但我无法转换以下代码。

当我使用 Any 而不是 AnyObject 时,出现如下错误:上下文类型“Any”不能与“items:”部分中的数组文字一起使用。

当我使用 AnyObject 然后将“名称:”部分用作 AnyObject 时出现如下错误:上下文类型 'AnyObject' 不能与数组文字一起使用

我找不到最佳解决方案。我该怎么做?

var menus: [[String: AnyObject]] {
return [
["name": NSLocalizedString("General", comment: ""),
"items": [
MenuItem(icon: UIImage.fontAwesomeIcon(FontAwesome.Heart, textColor: TubeTrends.Settings.foregroundColor, size: TubeTrends.Settings.menuIconSize), title: NSLocalizedString("Favorites", comment: ""), action: { (indexPath) -> Void in
self.navigationController?.pushViewController(self.favoritesVideoListVC(), animated: true)
}),
]
]

最佳答案

在 Swift 3 中,异构文字集合类型必须显式注释,例如

var menus: [[String: Any]] {
let dict : [String:Any] = ["name": NSLocalizedString("General", comment: ""),
"items": [
MenuItem(icon: UIImage.fontAwesomeIcon(FontAwesome.Heart, textColor: TubeTrends.Settings.foregroundColor, size: TubeTrends.Settings.menuIconSize), title: NSLocalizedString("Favorites", comment: ""), action: { (indexPath) -> Void in
self.navigationController?.pushViewController(self.favoritesVideoListVC(), animated: true)
}),
]
]
return [dict]
}

关于arrays - 上下文类型 'Any' 不能与数组文字 Swift 3 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42530189/

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