Startindex swift 3问题

时间:2016-10-22 19:04:58

标签: swift swift3

我收到一个startIndex错误。错误是“类型的值'string.index'(aka'string.characterview.index')没有member'advanced”。下面是代码和错误的图像。

{{1}}

Image of Error of isfirstresponder

1 个答案:

答案 0 :(得分:2)

在swift 3中,您不能再使用高级,后继或前任,而是需要使用

let indexAfter = someString.index(after: someIndex)
let indexBefore = someString.index(before: someIndex)
let anyOtherIndex = someString.index(someIndex, offsetBy: distance)

所以你的代码应该是这样的

let index = (hasOverflow) ? 
text.index(text.startIndex, offsetBy: expectedInputLength) :
text.index(text.startIndex, offsetBy: text.characters.count)

作为旁注,

text.index(text.startIndex, offsetBy: text.characters.count)

实际上与

相同
text.endIndex

所以你可以改用

let index = (hasOverflow) ? 
text.index(text.startIndex, offsetBy: expectedInputLength) :
text.endIndex