目前,我一直在使用XCode 8并在线
let range = key.startIndex...key.startIndex.advancedBy(0)
我收到错误:
错误:'advancedBy'不可用:要将索引前进n步,请在生成索引的CharacterView实例上调用'index(_:offsetBy :)'。
我该如何解决这个问题?
错误的屏幕截图如下:
答案 0 :(得分:22)
advancedBy(_:)
已在Swift v3中弃用,并由index(_:offsetBy:)
取代。有关详细信息,请参阅Apple的migration guide。
您的错误的解决方案:
let range = key.startIndex...key.index(key.startIndex, offsetBy: 0)
答案 1 :(得分:0)
您可以通过构建新字符串而不是操纵旧字符串来实现您的目标:
let upperCasedFirstCharacter = String(key.characters.first!).uppercased()
let remainder = key.substring(from: key.characters.index(after: key.characters.startIndex))
let selector = "set\(upperCasedFirstCharacter)\(remainder)"