我有一个// If the PHP installation does not support short tags we'll
// do a little string replacement, changing the short tags
// to standard PHP echo statements.
if ( ! is_php('5.4') && ! ini_get('short_open_tag') && config_item('rewrite_short_tags') === TRUE)
{
echo eval('?>'.preg_replace('/;*\s*\?>/', '; ?>', str_replace('<?=', '<?php echo ', file_get_contents($_ci_path))));
}
else
{
include($_ci_path); // include() vs include_once() allows for multiple views with the same name
}
的屏幕,显示存储在对象Table View
中的所有提醒。
现在我正在点击一行提醒列表,通向一个屏幕以显示其详细信息。
我想要做的是:选择一行,获取行索引,然后在这样的行索引中选择数组中相应的提醒对象,以传递给下一个视图。
我该怎么办?我是Swift的新手。这是我的坦克练习任务。
答案 0 :(得分:1)
你走在正确的轨道上。当您点击触发segue的表中的单元格时,prepareForSegue的sender参数就是单元格。您可以使用tableView出口和单元格对象来获取indexPath并使用它来从数组中检索数据。
class ReminderListController: UITableViewController, addReminderProtocol {
// assuming that the following gets loaded somehow.
var currentReminders = [Reminders]()
var reminderToPass: Reminders?
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "showReminderSegue" {
// convert sender to a cell
if let cell = sender as? UITableViewCell {
// get the indexPath of that cell in the tableView
let indexPath = tableView.indexPathForCell(cell)
if let destinationVC = segue.destinationViewController as? ShowReminderController {
destinationVC.aReminder = currentReminders[indexPath.row]
}
}
}
}
}