有一个 tableView
,它有一个标题为“Notes”的 section
。最初有一个 row
带有 string
“Click here to add notes”。单击 cell
后,它会 segues
到 textView
并添加注释。现在该部分中有一个带有注释的新单元格(“单击此处添加注释”现在是第二行)。当单击带有注释的单元格并再次转到 textView 时,我希望 textView 在编辑之前显示 note
并且我通过 segue 传递注释。但错误显示 fatal error: expectedly found nil while unwrapping an Optional value
。请帮助找出问题所在。
我的代码:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
switch indexPath.section {
case 0-3: break
case 4:
self.performSegueWithIdentifier("toTextView", sender: indexPath)
default: break
}
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "toTextView" {
let indexPath = sender as! NSIndexPath
let noteText = detailsInSection[4][indexPath.row] as! String
let textVC = segue.destinationViewController as! TextViewController
if noteText == "Click here to add notes" {
// do nothing
} else {
textVC.notesTextView.text = noteText // Break point is here
}
}
}
最佳答案
根据评论,notesTextView
为 nil,因为此时尚未加载 textVC
中的 View 。更改代码以将 noteText
属性添加到 TextViewController
,在 prepareForSegue
中设置该值,然后在 viewDidLoad
中TextViewController
,设置notesTextView.text = noteText
。
关于ios - 如何使用 segue 将字符串传递给 textView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37380245/