二、总结几种关于ViewControllers之间传值的方式(从子视图向父视图传值)
2014-02-24 00:22
375 查看
从子视图向父视图回传值,通常有以下三种方法
{
1、Delegate(代理)
2、Notification(通知)
3、Blocks(块)
}
以FirstViewController和SecondViewController作为例子,SecondViewController是FirstViewController的子视图
1、Delegate
2、Notification
补充ing。。
{
1、Delegate(代理)
2、Notification(通知)
3、Blocks(块)
}
以FirstViewController和SecondViewController作为例子,SecondViewController是FirstViewController的子视图
1、Delegate
/* * SecondViewController.h */ #import <UIKit/UIKit.h> //定义协议(即 使用了这个协议后,就需按照这个协议规定的内容在执行) @protocal SecondViewControllerDelegate <NSObject> - (void)passDataBack: (NSString *)data; @end @interface SecondViewController : UIViewController <SecondViewControllerDelegate> @property (nonatomic, weak) id <SecondViewControllerDelegate> delegate; @end /* * SecondViewController.m */ //为了省略篇幅,只贴出必要的代码 - (IBAction)back:(id)sender{ [self.delegate passDataBack:@"pass data back"]; [self.desmissViewControllerAnimated:YES completion:nil]; }
/* * FirstViewController.h */ #import <UIKit/UIKit.h> #import <SecondViewController.h> //FirstViewController遵循SecondViewControllerDelegate协议 @interface FirstViewController : UIViewController <SecondViewControllerDelegate> @end /* * FirstViewController.m */ - (IBAction)open:(id)sender{ SecondViewController *secondViewController = [[SecondViewController alloc] init]; secondViewController.delegate = self; [self presentViewController:secondViewController completion:nil]; } //在这里要补充好协议中passDataBack的方法 - (void)passDataBack: (NSString *)data{ NSLog(@"Passing data is %@", data); }
2、Notification
补充ing。。
相关文章推荐
- 一、总结几种关于ViewControllers之间传值的方式(从父视图向子视图传值)
- MVC中的页面传值,通常指Controller和view之间的数据传递,经常用到的有几种方式,总结如下:
- .NET页面之间传值的几种方式总结
- 关于MVC中控制器(controller)向视图(view)传值的几种方式
- UIViewControl之间传值的几种方式在这里做一下总结
- 关于html页面之间传值的几种方式
- iOS UI界面之间传值方式的整理总结(2)单例方法
- ASP.NET页面传值的几种方式【总结收集】
- 可以实现视图之间相互传值、信息交换的方法总结
- java前后台之间传值的几种方式
- ASP.NET 页面之间传值的几种方式
- 【ASP.NET MVC系列】浅谈ASP.NET 页面之间传值的几种方式
- ASP.NET 页面之间传值的几种方式
- 页面之间传值的几种方式
- 浅谈ASP.NET 页面之间传值的几种方式
- iOS UI界面之间传值方式的整理总结(1)协议方法
- ASP.NET 页面之间传值的几种方式
- 关于struts2传值方式的一些学习总结
- 详解ASP.NET 页面之间传值的几种方式
- 页面之间传值,常见的几种方式。