一、delegate
- 准确的说是一种设计模式
- iOS当中以@protocol形式体现
- 传递方式一对一
- delegate是使用通知者模式实现
二、delegate 的工作流程是怎样的
协议放:按照协议实现方法
委托方:1、要求代理方需要实现的接口 2、调用代理方遵从的协议方法
代理方:可能返回一个处理结果给委托方
三、协议方法不是必须需要实现,
四、注意事项
一般声明为 week 以规避循环引用

墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
700+累计阅读
721平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄14年
协议放:按照协议实现方法
委托方:1、要求代理方需要实现的接口 2、调用代理方遵从的协议方法
代理方:可能返回一个处理结果给委托方
一般声明为 week 以规避循环引用

iOS设计模式——委托(delegate)例子
代码实现代理模式。具体文章简介可以参考博文:http://blog.youkuaiyun.com/lovefqing/article/details/8270111
iOS 代理(Delegate)
一、代理的特点 准确的说是一种软件设计模式 iOS当中以@protocol形式提现 传递方式一对一 二、代理的基本使用 代理是一种通用的设计模式,在iOS中有特定的语法来实现代理模式,OC语言可以通过@Protocol实现协议。 1、代理组成部分 协议:用来指定代理双方可以做什么,必须做什么。 代理:根据协议,完成委托方需要实现的功能(方法)。 委托:根据协议,指定代理去完成什么功能。 2、协议(Protocol)的概念 从上图中我们可以看到三方之间的关系,在实际应用中通过协议来规定代理双方的行为
ios设计模式delegate
ios设计模式delegate 示例 ,导航功能的两个视图控制器(用push方式从一个窗口推到另一个窗口),第二个窗口创建两个按钮,标题分别为红色和绿色,点相应的按钮弹回前一个窗口,同时前一个窗口的背影色变成按钮标题指示的颜色。
Delegate介绍
首先定义一个协议,声明需要多个对象响应的方法。@optional@end首先,定义一个事件协议,该协议包含委托者将调用的方法。@end@end@end@end@optional@end这个协议声明了一个方法,任何想要监听事件的代理都应该实现这个方法。
【HCIE】FRR+BFD+OSPF与BGP联动
FRR+BFD+OSPF与BGP联动
手把手教你解决Kernel panic报错:init找不到的5种排查方法(附NFS挂载实战)
本文深入解析了Linux系统启动时出现“Kernel panic - not syncing: No working init found”报错的根本原因,并提供了五种系统性的排查方法。文章结合NFS挂载根文件系统的实战场景,详细阐述了从动态链接库依赖、内核引导参数、NFS权限配置、文件系统完整性到内核配置干扰的完整排查路径,帮助开发者快速定位并解决这一常见的系统启动故障。
iOS13 Scene Delegate详解
iOS13 项目中的SceneDelegate类有什么作用?自从Xcode11发布以来,当你使用新XCode创建一个新的iOS项目时,SceneDelegate会被默认创建,它到底有什么用呢。 在本文中,我们将深入探讨iOS 13和Xcode 11的一些变化。我们将重点关注SceneDelegate和AppDelegate,以及它们如何影响SwiftUI、Storyboard和基于XIB的UI项...
Stable Diffusion跑图总爆显存?别急着换显卡,试试这个PYTORCH_CUDA_ALLOC_CONF参数调优
本文深入解析了Stable Diffusion运行中常见的显存不足问题,特别是由显存碎片化导致的假性OOM现象。通过详细讲解PYTORCH_CUDA_ALLOC_CONF参数中的max_split_size_mb设置技巧,提供了一套完整的显存优化方案,帮助用户在无需升级硬件的情况下显著提升AI绘画的稳定性与效率。
iOS delegate挂钩
Objective-C 奇巧淫技–delegate挂钩奇技淫巧 指过于奇巧而无益的技艺与制品.需求说明在实际的编程过程中,我们总要定制一些控件,在定制的过程里,有时喜欢自己实现部分delegate方法// MYScrollView.m- (instancetype)init { ... self.delegae = self; ... }- (void)scrollViewD
LVGL 组件对齐方式说明
本文说明 LVGL(以 v8 为例)中常用的 lv_align_t对齐选项的含义与用法,对应界面设计工具里下拉列表中的以及等命名。
Android AVB 分析(十二)嵌入式设备安全中的 dm-verity 简介
上一篇 《Android AVB 分析(十一)bootloader 是如何进行 verify boot 检查的?》 分析了 bootloader 中是如何调用 libavb 函数库验证 vbmeta 和 boot 等分区的。接下来就打算写一篇介绍 dm-verity 原理的文章,然后再写一篇徒手 dm-verity 实践的文章,结果偶然发现了本篇的英文原版。写得太好,我觉得自己完全没有必要再写原理了。由于原文是英文,有些英语不太好的朋友不一定能完全理解。我花了点时间,结合 AI 将英语原文翻译成中文。
iOS Delegate模式
本文介绍了iOS中常用的delegate模式
BDD测试用例:Playwright的MCP Server实战
Playwright MCP Server建立了大模型和真实的浏览环境之间的桥梁,可以让大模型操作多款浏览器完成测试任务。
iOS delegate
有两个scene,分别为Scene A和Scene B。Scene A上有一个UIButton(Button A)和一个UILable(Lable A);Scene B上有一个UITextFiled(textFiled)。当单击Scene A上的Button A时,跳转到Scene B,在Scene B的textFiled上输入文字,单击键盘的“完成”按钮,返回到Scene A,并在...
得物(毒)App潮鞋价格波动监控系统实战:从爬虫开发到数据可视化完整指南
本文将带领您从零开始构建一套完整的得物潮鞋价格监控系统,涵盖爬虫开发、数据存储、价格波动分析和可视化展示等全流程技术。我们将使用最新的Python技术栈,包括异步爬虫框架、智能代理池、反爬虫绕过技巧,以及基于机器学习的时间序列预测模型。无论您是想要追踪特定鞋款价格的潮流爱好者,还是希望构建商业级监控系统的开发者,这篇文章都将为您提供切实可行的解决方案。
VB摄像头监控
该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制
iOS开发——使用delegate进行消息传递
iOS开发中,界面之间传递消息或者数据是最基本的一种需求,我们可以使用很多方法来实现这种需求,比如在头文件中暴露一个属性、比如使用notification等等。今天我们要来介绍另一种方式:使用delegate传递消息。 delegate称为委托,同时也是一种代理设计模式。使用委托避免了类与类的耦合度过高。利用委托赋值更加安全可控,委托赋值在不暴露自己类的属性的前提下就可以对自己进行
迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)
迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)
IOS delegate代理传参
IOS开发界面之间传递参数的方式有很多种。 1、使用SharedApplication,定义一个变量来传递. 2、使用文件,或者NSUserdefault来传递 3、通过一个单例的class来传递 4、通过Delegate来传递 下面简单介绍一下使用delegate方式传参 现在有两个界面,FriendsViewController(A表示)和PersonInf
OV9734 DATASHEET,完整规格书
OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等
17.iOS中继承了拥有delegate属性控件的问题
在iOS中,我们很多情况下都需要自定义控件,而自定义控件我们通常都是先继承自系统控件,然后进行一系列扩充,但我发现当我继承了本身拥有delegate属性的控件时,想要在自定义控件类内部拿到delegate方法出现了问题,下面我以UIScrollView为例进行说明: 1、第一个想法是直接在重写父类的初始化方法时设置self.delegate = self,这样虽然可以在类内部直接调用代理方法,但
ios delegate 用法
主要涉及到两个文件。 第一个文件,我称之为定义delegate的文件,要做的事: 1. 在BorderDetectionViewController.h中做两件事 (1) @protocol BorderDetectionViewControllerDelegate - (void)dismissBorderDetectionView; @end (2)
关于 iOS delegate 的遐想
关于iOS 中,delegate 的两种玩法。
iOS 中KVC、KVO、NSNotification、delegate 总结及区别
iOS 中KVC、KVO、NSNotification、delegate 总结及区别 1、KVC,即是指 NSKeyValueCoding,一个非正式的Protocol,提供一种机制来间接访问对象的属性。而不是通过调用Setter、Getter方法访问。KVO 就是基于 KVC 实现的关键技术之一。 Demo: @interface myPerson : NSObject { NSString*_name; int _age;
iOS中判定delegate是否已经被释放掉
在iOS的实际开发过程中,常常会遇到内存管理的问题。有一种特别常见的ne
iOS中自定义delegate的实现
在Iphone开发中我们大量用到delegate,无论是视图、控件等等,我们也可以自己定义delegate,以下介绍自定义delegate的步骤。 1.定义delegate的protocol文件 在一般的头文件h文件中添加如下内容 @protocol MainViewDelegate @required -(void)settingsButtonTapped; -(void)bookm
iOS keyWindow 和 delegate的window有何区别
iOS keyWindow 和 delegate的window有何区别 在开发中 我们总是自定义View 添加到window上 那么到底 添加到keyWindow 和 delegateWindow 上那 两者有什么区别吗 ? 1.遇见问题 之前的自定义弹窗总是添加到keyWindow上,一直屡试不爽。最后遇到了一个bug。 bug描述: 1、在系统弹窗出现 之后,添加到keyWindow上的视图 会 随着弹窗的消失而消失。 2、在系统弹窗出现 之前,添加到keyWindow上的视图就 不会 随着弹窗的消失而
1995
3595
1728

被折叠的 条评论
为什么被折叠?



