segue:
Storyboard上每一根用来界面跳转的线,都是一个UIStoryboardSegue对象(简称Segue)。
segue的属性:
1 //唯一标识 2 @property (nonatomic, readonly) NSString *identifier; 3 //源控制器 4 @property (nonatomic, readonly) id sourceViewController; 5 //目标控制器 6 @property (nonatomic, readonly) id destinationViewController;
segue的类型:
自动型:不需要进行条件判断的跳转,可直接在storyboard中连线跳转即可;
手动型:需要进行条件判断的跳转,就需要手动添加代码来控制跳转;
1、设置segue的唯一标识;
2、根据segue的唯一标识进行跳转 ;
1 [self performSegueWithIdentifier:@"identifier" sender:nil];
控制器的数据传递:
控制器之间的数据传递主要有2种情况:顺传和逆传
顺传
控制器的跳转方向: A --> C
数据的传递方向 : A --> C
数据的传递方式 : 在A的prepareForSegue:sender:方法中根据segue参数取得destinationViewController, 也就是控制器C, 直接给控制器C传递数据
(要在C的viewDidLoad方法中取得数据,来赋值给界面上的UI控件)
逆传
控制器的跳转方向: A --> C
数据的传递方向 : C --> A
数据的传递方式 : 让A成为C的代理, 在C中调用A的代理方法,通过代理方法的参数传递数据给A