我想知道你是否有人可以帮助我解决我遇到的一个小问题,如果可能的话。我有一些名为ChecklistA,ChecklistB等的全局变量。我想要的是,如果用户选择一个名为A的表格单元格,则将ChecklistA传递给目标控制器。
换句话说:
全局变量:NSArrays - > “ChecklistA”,“ChecklistB”,“ChecklistC”等。
单元格:“A”,“B”,“C”等等
...点击单元格B ...
destinationController.checklist = NSArray命名:“ChecklistB”
如果您有任何问题可以随意提问,我希望这很清楚。
提前谢谢!
答案 0 :(得分:0)
我相信您的表视图已实现此委托方法:
tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
用户选择(点击)单元格时会收到通知。
您可以通过以下方式实现您的委托方法:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if( indexPath.row == 0) /// First cell
{
_selectedChecklist = ChecklistA;
}
else if( indexPath.row == 1) /// Second cell
{
_selectedChecklist = ChecklistB;
}
else if( indexPath.row == 2) /// Third cell
{
_selectedChecklist = ChecklistC;
}
}
对于prepareForSegue
,只需将值传递给目标viewController:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
destinationController.checklist = _selectedChecklist;
}