UI - 视图控制器之间的值传递
2015-12-26 15:38
465 查看
// 视图控制器之间的传值 // 一、代理传值(从后往前传值的问题) //(1)制定协议一方 #pragma mark--制定协议第一步: 声明协议 #pragma mark--制定协议第二步: 添加代理人属性 #pragma mark--制定协议第三步: 让代理人执行协议方法 // 第一步: 声明协议 // <NSObject> 父协议 @protocol ForthViewControllerDelegate <NSObject> // 向外传的值作为方法的参数 -(void)passString:(NSString *)str; // 第二步: 添加代理人 @property (nonatomic, weak)id<ForthViewControllerDelegate> delegate; // 第三步: 让代理人执行协议方法 //若代理人存在, 且实现了passString:方法, 就让代理人执行该方法 if (self.delegate && [self.delegate respondsToSelector:@selector(passString:)]) { [self.delegate passString:self.textField.text]; } //(2)使用协议的一方 #pragma mark--使用协议第一步: 签订协议 #pragma mark--使用协议第二步: 指定代理人 #pragma mark--使用协议第三步: 实现协议方法 // 第一步: 签订协议 // 延展后面可以签协议 // 也可以在.h中签协议 @interface ThirdViewController () <ForthViewControllerDelegate> // 第二步: 指定代理人 forthVC.delegate = self; // 第三步: 实现协议方法 -(void)passString:(NSString *)str { self.label.text = str; } // 二、属性传值(从前往后传值的问题) // 要能访问,需要在.h声明属性 #warning 属性传值1: 声明对应类型的属性 @property (nonatomic, strong) NSString *str; @property (nonatomic, strong) UILabel *label; #warning 属性传值2: 值的使用 self.label.text = self.str;
相关文章推荐
- iOS,UIAlertController
- 用简单UI控件实现霓虹灯
- UI学习第03天
- 谈谈使用Arduino
- Web开发之request
- iOS9.0以后那些被不推荐使用(deprecated)方法之:sendAsynchronousRequest was deprecated in iOS 9、UIAlertView was deprecated
- UI - NavigationController
- LeetCode(115) Distinct Subsequences
- LeetCode(115) Distinct Subsequences
- ios 仿新浪微博 UINavigationController 向左滑动时显示上一个控制器的View.
- require.js 配置文件研究
- OSGI blueprint Converter的使用
- CSS marquee滚动 长宽怎么设置代码
- . ERROR! The server quit without updating PID file
- Core BlueTooth官方文档翻译
- Xcode7.2核心动画Layer的简单认识使用
- 给 TI BLE 添加自己UUID
- UI - UITableView表视图 ( 一 )
- BNU OJ 51003 BQG's Confusing Sequence
- Android UI设计: 分享一个仿QQ聊天消息提示可以拖拉气泡