我发现只需在每个部分的 if else 语句中手动设置 segueIdentifier 即可解决我的问题:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
if indexPath.section == 0 {
//art
performSegueWithIdentifier((String(indexPath.row)), sender: nil)
} else if indexPath.section == 1 {
//art galleries
if indexPath.row == 0 {
self.performSegueWithIdentifier("gallery1", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 1 {
self.performSegueWithIdentifier("gallery2", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 2 {
self.performSegueWithIdentifier("gallery3", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 3 {
self.performSegueWithIdentifier("gallery4", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 4 {
self.performSegueWithIdentifier("gallery5", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 5 {
self.performSegueWithIdentifier("gallery6", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
}
} else if indexPath.section == 2 {
//historic sites
if indexPath.row == 0 {
self.performSegueWithIdentifier("gallery7", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 1 {
self.performSegueWithIdentifier("gallery8", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 2 {
self.performSegueWithIdentifier("gallery9", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 3 {
self.performSegueWithIdentifier("gallery10", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 4 {
self.performSegueWithIdentifier("gallery11", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 5 {
self.performSegueWithIdentifier("gallery12", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
}
} else if indexPath.section == 3 {
//parks
if indexPath.row == 0 {
self.performSegueWithIdentifier("gallery13", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 1 {
self.performSegueWithIdentifier("gallery14", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 2 {
self.performSegueWithIdentifier("gallery15", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 3 {
self.performSegueWithIdentifier("gallery16", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 4 {
self.performSegueWithIdentifier("gallery17", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
} else if indexPath.row == 5 {
self.performSegueWithIdentifier("gallery18", sender: self)
tableView.deselectRowAtIndexPath(indexPath, animated: true)
}
}
tableView.deselectRowAtIndexPath(indexPath, animated: true)
}