IOS之代理的使用(重点)

本文详细介绍了iOS中代理模式的使用,从创建协议、定义代理方法、设置代理属性到实际调用代理方法的全过程。通过一个实例展示了如何在自定义视图中,当按钮被点击时通知视图控制器进行相应操作,强调了代理在解决视图间通信问题中的重要作用。
摘要由CSDN通过智能技术生成

IOS之代理的使用(重点)

在这里插入图片描述

IOS的代理(Delegate) 是学习的重难点,必须学会,必须滚瓜烂熟
1.点击自定义视图的时候,创建了一个Label,Label添加到了superView,不合理的地方
2 “越权” 添加Label 的工作上交给视图控制器更合理
解决方法
在按钮被点击的时候,通知视图控制器 => 视图控制器监听按钮的点击 => 视图控制器是自定义视图的代理
第一步:
//1. 协议名 以类名开始+Delegate
@protocol AppInfoDelegate

第二步:
//2. 协议方法,以类名开始(没有类前缀) ,第一个参数是自己
//由于代码由上往下编译,导致没有找到,@interface太早,需要 使用@class 进行类引用
@required
-(void)appInfoViewDidClickDownLoadButton:(AppInfoView *_Nullable)appInfoView;

第三步:
//3.定义代理属性,遵守了AppInfoDelegate 协议的任意一个对象。,都可以成为代理
@property(nonatomic,weak) id delegate;

第四步:
//4. 通知代理
[self.delegate appInfoViewDidClickDownLoadButton:self];

第五步:
//5

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值