据我所知,事情(advance()
)在swift 3中发生了变化,但我没有设法让它发挥作用,是什么方法在swift 3中做到了?
// Set the note text as the default post message.
if (self.full_description.text?.characters.count)! <= 140 {
twitterComposeVC?.setInitialText("\(self.full_description.text)")
}
else {
let index = advance(self.noteTextview.text.startIndex, 140)
let subText = self.noteTextview.text.substringToIndex(index)
twitterComposeVC.setInitialText("\(subText)")
}
答案 0 :(得分:3)
针对Swift 4.x进行了更新:
您需要使用String
方法index(_:offsetBy:)
来推进索引,并将已弃用的substring(to:)
替换为字符串切片下标,其中部分范围为&#39;操作者:
let index = self.noteTextview.text.index(self.noteTextview.text.startIndex, offsetBy: 140)
let subText = String(self.noteTextview.text[..<index])
获取String
的前140个字符的另一种方法是:
let subText = String(self.noteTextview.text.prefix(140))