我一直在用Swift 3更新一些旧代码和答案,但是当我接触Swift Strings和Indexing时,很难理解。具体来说,我正在尝试以下操作:let str = "Hello, playground"let prefixRange = str.startIndex..<str.startIndex.advancedBy(5) // error第二行给我以下错误“ advancedBy”不可用:要使索引前进n个步骤,请在生成索引的CharacterView实例上调用“ index(_:offsetBy :)”。我看到String有以下方法。str.index(after: String.Index)str.index(before: String.Index)str.index(String.Index, offsetBy: String.IndexDistance)str.index(String.Index, offsetBy: String.IndexDistance, limitedBy: String.Index)刚开始这些让我很困惑,所以我开始和他们一起玩直到我理解它们。我在下面添加一个答案,以显示它们的用法。
3 回答
蝴蝶刀刀
TA贡献1801条经验 获得超8个赞
在tableViewController内部创建一个UITextView。我使用了函数:textViewDidChange,然后检查了返回键输入。如果检测到返回键输入,则删除返回键的输入并关闭键盘。
func textViewDidChange(_ textView: UITextView) {
tableView.beginUpdates()
if textView.text.contains("\n"){
textView.text.remove(at: textView.text.index(before: textView.text.endIndex))
textView.resignFirstResponder()
}
tableView.endUpdates()
}
- 3 回答
- 0 关注
- 1794 浏览
添加回答
举报
0/150
提交
取消