所以在我的项目中,我有一个包含2个部分的HistoryTableViewController。一部分是PeopleYouOwe,另一部分是PeopleWhoOweYou。我如何能够连接这个tableviewcontroller并将其链接到将根据我的部分显示不同数据的详细视图?
答案 0 :(得分:2)
使用prepareForSegue尝试以下方法 -
创建tableView出口名为 myTableView
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
NSIndexPath *path = [self.myTableView indexPathForSelectedRow];
if (path.section == 0)
{
if ([segue.identifier isEqualToString:@"PeopleYouOwe"])
{
PeopleYouOwe *peopleYouOweVC = segue.destinationViewController;
// you can get data of cell as array[path.row]
}
}
else if (path.section == 1)
{
if ([segue.identifier isEqualToString:@"PeopleWhoOweYou"])
{
PeopleWhoOweYou *peopleWhoOweYou = segue.destinationViewController;
// you can get data of cell as array[path.row]
}
}
}
答案 1 :(得分:0)
您可以使用UITableViews提供的委托方法,如下所示:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSInteger row = indexPath.row;
NSInteger section = indexPath.section;
if(section == 0) // example
{
// do whatever
}
else if (section == 1)
{
// do something else
}
}
如果这不是您想要的,您需要提供更多详细信息,最好是一些代码来显示您已有的内容。你的问题很模糊。
答案 2 :(得分:0)
如果您更喜欢prepareForSegue,可以使用以下内容:
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
然后根据部分和行采取行动。