代理实现界面跳转传值
来源:互联网 发布:类似淘宝的交易平台 编辑:程序博客网 时间:2024/05/22 07:08
1.委托需要做的工作有:
1.1定义协议与方法1.2声明委托变量 1.3设置代理 1.4通过委托变量调用委托方法
2.代理需要做的工作有:
2.1遵循协议 2.2实现委托方法
下面讲解一下使用委托实现页面传值的解决方法:
加入我们有两个ViewController 分别为:ViewController和 ReceiveViewController
在viewController中
@protocol sendValueDelegate //定义(——)协议与(——)方法
-(void)sendValue:(NSString *)value;
@end
@interface ViewController : UIViewController
@property (retain , nonatomic) id //(——)声明一个代理 valueDelegate;
@end
在ViewController文件的.m中
import “ViewController.h”
import “ReceiveViewController.h”
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UITextField *sendValue;
- (IBAction)buttonClick:(id)sender;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
} - (IBAction)buttonClick:(id)sender {
ReceiveViewController *receiveVC = [[ReceiveViewController alloc]initWithNibName:@”ReceiveViewController” bundle:nil];
self.valueDelegate = receiveVC;//(——)设置代理
[self.valueDelegate sendValue:self.sendValue.text];用(——)代理实现协议委托的方法,并把要传的值传过去,以便在下一个界面中去接收
//[self.navigationController pushViewController:receiveVC animated:YES];
[self presentViewController:receiveVC animated:YES completion:nil];
NSLog(@”==”);
}
@end
在ReceiveViewController.h中
import
import “ViewController.h”
@interface ReceiveViewController : UIViewController//(——)遵循设置代理的协议
@property (weak, nonatomic) IBOutlet UILabel *receiveValue;
@property (weak, nonatomic) IBOutlet UITextField *textField;
@end
import “ReceiveViewController.h”
@interface ReceiveViewController ()
@property (strong, nonatomic)UILabel *label;
@end
@implementation ReceiveViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
//(——)实现委托的方法
-(void)sendValue:(NSString *)value{
self.label = [[UILabel alloc]initWithFrame:CGRectMake(100, 100, 100, 30)];
[self.label setBackgroundColor:[UIColor grayColor]];
[self.view addSubview:self.label];
[self.label setTintColor:[UIColor redColor]];
self.receiveValue.text = value;
self.textField.text = value;NSLog(@"=====%@", value);NSString *str = value;NSLog(@"传过来的值是:%@", str);self.label.text = str ;
}
@end
- 代理实现界面跳转传值
- android中利用代理模式简单实现界面之间的跳转与传值
- iOS利用代理实现界面跳转
- 单例实现界面跳转传值
- Android实现两个Activity界面的跳转并传值
- Android实现界面跳转
- 实现界面的跳转
- Storyboard实现界面跳转
- textview实现界面跳转
- iOS开发——使用代理(Delegate)实现跨界面执行跳转请求
- JAVA中实现界面跳转
- Java轻松实现跳转界面
- js实现界面自动跳转
- QT实现界面跳转切换
- LabVIEW如何实现界面跳转
- 在聊天界面实现跳转
- 如何实现界面的跳转
- 使用rxjava2实现界面跳转
- LINUX下select设置超时
- HTTP(S)网站目录暴破测试工具 – Dirs3arch v0.3.0
- Ultra-QuickSort(离散化+树状数组求逆序数)
- 2015年2月11日
- 通用的POI导入Excel解决方案
- 代理实现界面跳转传值
- 鸽巢原理:hdu 1205 吃糖果+poj 2356 Find a multiple+poj 3370 Halloween treats
- 《网络流学习笔记04 && NYOJ 489 哭泣天使(建边,超级源点和汇点)》
- 趣题——打开的锁
- 树状数组 求逆序数
- change the username on ubuntu 12.04 server
- C#基础总结
- windows下编译及使用libevent
- 百度地图 判断一个标注点是否在多边形区域里