【发布时间】:2015-09-17 04:56:30
【问题描述】:
我有一个由 cellForRowAtIndexPath 填充的 UITableView:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell: UITableViewCell = self.tableView.dequeueReusableCellWithIdentifier("customTableViewCell") as! UITableViewCell
let task = frc.objectAtIndexPath(indexPath) as! Task
cell.textLabel?.text = task.summary
var detail = task.detail
var context = task.context
var due = task.date
var status = task.status
var responsible = task.responsable
var folder = task.folder
cell.detailTextLabel?.text = "Contexte: \(context), Detail: \(detail), Status: \(status), Ending date: \(due)"
return cell
}
在情节提要上,我在单击 tableView 的一个单元格以打开 detailViewController 时进行了转场
这是我的 didSelectRowAtIndexPath:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let cell = tableView.cellForRowAtIndexPath(indexPath)
self.name = cell!.textLabel!.text!
println(self.name)
self.performSegueWithIdentifier("Show Detail", sender: indexPath);
}
还有prepareForSegue:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
if let identifier = segue.identifier{
switch identifier {
case "Show Detail":
let indexPath = self.tableView.indexPathForSelectedRow()
let editTaskVC = segue.destinationViewController as! EditTaskViewController
editTaskVC.Name = "cell.textLabel?.text is what I would like to.."
default: break
}
}
}
如果我执行editTaskVC.Name = indexPath?.description,我可以看到单击的单元格的描述,例如<NSIndexPath: 0x78f96ab0>...。
是否有可能,而不是打印 indexPath 的描述,而是打印单击行的 cell.textLabel?.text?
我在论坛上看过很多很多教程或帖子,但我没有成功解决我的问题...
感谢您的帮助。
问候。
【问题讨论】:
标签: swift uitableview row segue didselectrowatindexpath