storyBoard中的Segue跳转

时间:2022-05-31 16:22:38
//———————————————--------------在不确定的Segue跳转-----------------------------------
多个按钮指向要跳转的视图
storyBoard中的Segue跳转
1、在一个恰当的位置执行跳转
- (IBAction)addHero:(id)sender {
    NSEntityDescription *entity=self.fetchedResultsController.fetchRequest.entity;
    NSManagedObject *newObj=[NSEntityDescription insertNewObjectForEntityForName:entity.name inManagedObjectContext:self.managedObjectContext];
    NSError *error=nil;
    if (![self.managedObjectContext save:&error]) {
        NSLog(@"添加错误:%@",error.userInfo);
    }
//执行Segue跳转,我们将newObj作为一个发送者传递出去
    [self performSegueWithIdentifier:@"heroDetailSegue" sender:newObj];
}
2、重写Segue跳转的预处理方法
//当使用segue跳转时,自动调用
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
//首先要判断是哪个Segue的跳转
    if ([segue.identifier isEqualToString:@"heroDetailSegue"]) {
//Segue中有源vc和目标vc对象
        HeroTableViewController *vc=segue.destinationViewController;
        vc.hero=sender;//获取到sender参数
    }
}
//----------------------------------------------------