gpt4 book ai didi

ios - 歧义使用 'subscript' - NSMutableDictionary

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

2015 年 5 月,当我编写应用程序时,我的代码在 Swift 版本中完美运行。当我今天打开 XCode 7.2 时,我收到一条我无法理解的奇怪错误消息:“下标”的使用不明确。我总共在我的代码中遇到此错误 16 次,有人知道我可以更改什么来解决此问题吗?

if let path = NSBundle.mainBundle().pathForResource("colorsAndAlternatives", ofType: "plist") {
if let dict = NSMutableDictionary(contentsOfFile: path) {
let randomNumber = Int(arc4random_uniform(UInt32(numberOfOptions)))
let correctColor = "#" + String(dict["\(randomNumber)"]![1] as! Int!, radix: 16, uppercase: true) // Ambiguous use of 'subscript'

correctColor 由 HEX 使用以下代码确定:https://github.com/yeahdongcn/UIColor-Hex-Swift/blob/master/HEXColor/UIColorExtension.swift

最佳答案

Swift 编译器现在更加严格。

在这里,它不确定 dict["\(randomNumber)"] 的结果是什么类型,所以它放弃并要求精度。

帮助编译器理解结果是一个 Int 数组,您可以使用下标访问它,例如:

if let result = dict["\(randomNumber)"] as? [Int] {
let correctColor = "#" + String(result[1], radix: 16, uppercase: true)
}

关于ios - 歧义使用 'subscript' - NSMutableDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35163342/

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