'advancedBy' недоступен в Xcode 8

ios swift swift3

8690 просмотра

2 ответа

754 Репутация автора

В настоящее время я использую XCode 8 и на линии

let range = key.startIndex...key.startIndex.advancedBy(0)

Я получаю ошибку:

ошибка: 'advancedBy' недоступен: для продвижения индекса на n шагов вызовите 'index (_: offsetBy :)' для экземпляра CharacterView, который создал индекс.

Как я могу это исправить?

Скриншот ошибки ниже:

AdvancedBy недоступен

Автор: Va Visal Источник Размещён: 19.07.2016 04:00

Ответы (2)


0 плюса

75998 Репутация автора

Вы можете достичь того, что вам нужно, проще, создав новую строку, а не манипулируя старой:

let upperCasedFirstCharacter = String(key.characters.first!).uppercased()

let remainder = key.substring(from: key.characters.index(after: key.characters.startIndex))

let selector = "set\(upperCasedFirstCharacter)\(remainder)"
Автор: Paulw11 Размещён: 19.07.2016 06:33

22 плюса

742 Репутация автора

advancedBy(_:)устарела в Swift v3 и заменена на index(_:offsetBy:). Обратитесь к руководству по миграции Apple для получения дополнительной информации.

Решение вашей ошибки:

let range = key.startIndex...key.index(key.startIndex, offsetBy: 0)
Автор: yohannes Размещён: 03.09.2016 05:27
Вопросы из категории :
32x32