【ios】2个viewController之间传值(segue方式)
来源:互联网 发布:苹果电影制作软件 编辑:程序博客网 时间:2024/05/21 10:42
目前我了解的viewController之间传值有2种方式,一种是segue方式,一种是delegate方式;本文只讲segue方式。
这样基本就ok啦,你可以在B的下面方法中尝试输出属性的值情况,比如这里的数组长度:
是不是很ok啊。
先定义viewController 1简称为A,viewController2简称为B
从A内的属性传给B;
第1、在B内先定义属性(Setter),供外部A调用;
比如:
B.h定义:
@property (nonatomic, strong) NSMutableArray* mysearchResultArray;
B.m中定义:
@synthesize mysearchResultArray;
接着2、在A定义到B的segue,即在storyboard中拖一根从A中按钮或者其他控件到B面板的线,并定义:Identifier;比如:
特别注意右边红色框内的属性别忘定义。
最后3、在A中定义方法:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{if ([segue.identifier isEqualToString:@"imageShow"])//此处判断是否是我们之前定义的segue,一个面板是可以定义多个去向的。{HSOATUserCollectionViewController* targetController = [segue destinationViewController];//在A中得到B面板对象; [targetController setMysearchResultArray:self.searchResultArray];//把A中的属性设置到B中。}}
这样基本就ok啦,你可以在B的下面方法中尝试输出属性的值情况,比如这里的数组长度:
- (void)viewDidLoad{ [super viewDidLoad]; NSLog(@"%i",[[self mysearchResultArray] count]);}
是不是很ok啊。
这里需要注意的是:
1、segue方式和delegate方式是两种方式,请勿为了实现一个传递功能用两种方式,当然,在整个项目中用哪种?甚至都用都无所谓啦。
2、storyboard里面别忘了给A,B面板指定Class(即对应的viewController);
3、本人也是刚刚才学习ios开发,如有描述错误,欢迎批评指正。heroying@gmail.com
- 【ios】2个viewController之间传值(segue方式)
- StoryBoard中使用Segue实现ViewController之间传值
- 多个ViewController之间传值
- iOS 不同界面(ViewController)之间传值
- iOS两个viewController之间传值
- IOS 两个ViewController 之间传值
- ViewController之间传值
- iOS 属性传值 Block传值 两个ViewController之间的
- iOS ViewController之间传值方法一(利用临时变量)
- iOS ViewController之间传值方法二(利用NSUserDefaults)
- iOS ViewController之间传值方法三(利用NSNotification)
- iOS ViewController之间传值方法四(利用Delegate)
- iOS ViewController之间传值方法五(使用block)
- IOS学习之——ViewController之间正向传值
- IOS学习之——ViewController之间双向传值(反向为代理模式)
- iOS segue 页面跳转传值
- iOS6中关于切换(segue)viewController产生的问题
- segue走的话如何给下个界面传值
- Codeforces 229D Towers 贪心 + dp
- nefu483星际转移问题(分层图网络流)
- C++上机报告 编程序输出各种星号图
- TCP/IP应用程序的通信连接模式
- 指针总结
- 【ios】2个viewController之间传值(segue方式)
- 一,软件工程的概论
- 创新工场笔试题2013年校园招聘
- GIT
- C++ STL Map使用
- 由于浏览器版本造成的HttpServlet获取request请求对象中含中文乱码问题
- 程序员必读经典书籍
- Unicode与UTF-8互转(C语言实现)
- 如何控制datagrid里编辑功能出现的TextBox的宽度,传递DataGrid中的值,如何用程序隐藏和显示DataGrid中的一列