所以我开始在XCode 4.3.2中使用故事板。我开始使用Master-Detail应用程序(iPad的拆分视图应用程序)。在详细视图(名为DetailVC
)中,我有一个视图,其中显示了一组自定义视图。
自定义视图(名为GridView
)有一个点击手势识别器,可以处理每个自定义视图上的点击事件。点击GridView
按下视图控制器会显示一些搜索结果(名为SearchResultsVC
)。
在单独的nib文件中创建GridView
,并且DetailVC
和SearchResultsVC
位于故事板中,如何创建目标为SearchResultsVC
的推送segue?我刚刚在DetailVC和SearchResultsVC之间创建了一个segue?有些事情我可以在识别出敲击手势时从GridView类内部以编程方式触发此segue ????
答案 0 :(得分:7)
在处理点按使用的方法中:
[self performSegueWithIdentifier:@“yourSegueIdentifier”sender:self];
在StoryBoard控件中,从DetailVC拖动到SearchResultVC,然后选择您想要的segue类型。确保将segue标识符命名为与属性检查器中上述方法中的标识符相同。
我会尝试改进我的答案我搞砸了,我想:
1)在你的DetailVC.h中为你的GridView创建一个像这个
的实例变量IBOutlet UIView * gridView;
还为您的网格视图创建一个getter方法和一个IBAction,如下所示
-(UIView *)gridView;
-(IBAction)myGridGotPressed:(id)sender;
2)现在在你的DetailVC.m中实现你的方法
-(UIView *)gridView{
if(!gridView){
[[NSBundle mainBundle] loadNibNamed:@"GridView" owner:self options:nil];
}
return gridView;
}
同样实施您的IBAction
-(IBAction)myGridGotPressed:(id)sender{
[self performSegueWithIdentifier:@"yourSegueIdentifier" sender:self];
}
3)为了完成这项工作,您需要将GridView的filesOwner类更改为DetailVC,然后正常连接出口和操作。
我希望有所帮助。