oc三种传值方式:通知传值,代理传值,block传值

本文详细介绍了Objective-C中三种常见的传值方式:代理、通知和Block。通过比较代理和通知的区别,如代理可以返回值而通知不能,以及它们在实际应用中的优缺点,展示了如何在代码中实现这些传值方法。对于代理,文章演示了定义协议、设置代理属性、调用代理方法的步骤。对于通知,解释了发送和接收通知的过程。最后,讨论了Block传值的方式,包括定义Block类型、调用Block传参以及在目标控制器中设置Block的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

三种传值方式分别为:通知传值,代理传值,block传值

通知和代理的区别(重点)

1,代理可以给sender返回值;通知不能返回值

2,通知代理量小,代理实现步骤比较繁琐

3,通知是一对多/一对无的关系; 代理是一对一关系

4,通知是一个监听者,效率较低.

一:代理传值

在NextViewController.h中

// 1,定制传值协议

@protocol NextViewControllerDelegate <NSObject>

- (BOOL)nextViewControllWithColor:(UIColor *)color;

@end

// 2,定义代理属性

@property (weak, nonat

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值