各种传值方法

各种传值方法

1、正向传值
a、通过属性传值
在需要数据的类里 声明属性

上一个页面传值

b、自定义函数 传值
调用函数

Next__ViewController *next = [[Next__ViewController alloc]initWithList:@[@"葫芦娃", @"金刚", @"奥特曼"]];

c、KVC 传值

通过全局变量 或属性 传值

// KVC 的key是 属性 或者全局变量 的名字
// KVC是通过key 找到属性 或 全局变量 的值
[colorView setValue:[UIColor purpleColor] forKey:@”bgColor”];

d、KVO 传值

2、通知

发送通知

NSDictionary *dic = @{@"name":@"金刚", @"tel":@"13970663456"};
sleep(5);

// 通知 不确定什么时候完成取数值的时候 (不知道什么完成操作的时候)
// 或者 发送给多个对象是
// 反向传值

 [[NSNotificationCenter defaultCenter] postNotificationName:@"didRespinse" object:nil userInfo:dic];

接受通知
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(reloadDataMessage:) name:@"didRespinse" object:nil];

传值
 label.text = [NSString stringWithFormat:@"%@\n%@", not.userInfo[@"name"], not.userInfo[@"tel"]];

3、闭包 block

// 闭包的声明
//返回值类型 (闭包的名字)(参数列表);
// block 常用于反向传值

// 闭包的名字 = ^ (参数列表) { 具体实现的内容 };

// 调用
// 闭包的名字();

1、 声明
void (^qqqq)(int num, NSString *string);

2、 闭包的实现
qqqq = ^(int num, NSString *string){
NSLog(@”%d %@”, num, string);
};

3、 闭包的调用
qqqq (123, @”456”);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值