1

IOS 6 , XCode 4.6.2 使用情节提要

这是我的问题。我有一个使用动态原型的带有 7 个单元格的表格视图。我想从第三个单元格转到另一个表格视图(这将允许用户选择一个国家并将该国家传回。)

是否可以将其设置为只有一个单元格触发 segue ?

如果不是,那么我认为我需要使用 didSelectRowAtIndexPAth 方法 - 但如果我没有在情节提要中绘制序列,我无法调用 performSegueWithIdentifier 因为没有标识符 - 也没有序列

任何想法应该怎么做?

干杯

西蒙

4

3 回答 3

2

不要从表格中的单元原型中画出你的 segue。而是将其从Files Owner表格视图控制器下方的图标绘制到下一个表格视图控制器。给它一个标识符,然后调用

[self performSegueWithIdentifier:@"yourSegueIdentifier" sender:self];

tableView:didSelectRowAtIndexPath.

于 2013-05-14T13:11:59.763 回答
0

如果您在视图控制器之间没有 segue,您可以使用pushUINavigationController 的方法。

如果您在两个视图控制器之间已经有一个 segue,您可以这样做:

-(void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
   if(indexPath.row == yourCellIndex) {
       [self performSegueWithIdentifier:@"yourSegueIdentifier" sender:objectThatYouSendOrNill];
   }
}

如果您在表格视图控制器中使用静态单元格,您可以直接将单元格中的 segue 链接到目标视图控制器。

于 2013-05-14T12:29:43.910 回答
0

您可以在情节提要本身中设计 DetailViewController。为该视图控制器提供 StoryboardID。并在 didSelectRowAtIndexPath

-(void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
   if(indexPath.row == 3)
  {
    DetailViewController *viewController=[self.storyboard instantiateViewControllerWithIdentifier:@"DetailViewController"];
[self.navigationController pushViewController:viewController animated:YES];
   }
}  

不要忘记给StoryboardIdDetailViewController 作为DetailViewController

于 2013-05-14T12:43:11.920 回答