gpt4 book ai didi

iphone - 在 Objective-C 中在哪里声明重用协议(protocol)

转载 作者:太空狗 更新时间:2023-10-30 03:44:37 25 4
gpt4 key购买 nike

如果我想重用一个协议(protocol)来通知主视图 Controller 何时关闭详细 View Controller ,例如: UIView notification when modal UIImagePickerController is dismissed?

我应该在哪里声明这个协议(protocol)?将协议(protocol)保存在单独的文件中是最佳做法吗?谢谢。

最佳答案

通常我(复制 Apple 的方法)在将与该协议(protocol)的委托(delegate)交互的类的 header 上声明协议(protocol)。 (例如,UIActionSheet 头文件包含 UIActionSheetDelegate 的协议(protocol)声明。)从技术上讲,在何处声明协议(protocol)并不重要,只要您没有 #import 语句的循环引用即可。这通常不会发生,因为与协议(protocol)交互的类这样做是为了避免需要 #import 现在将实现该协议(protocol)的所有其他类。 (UIActionSheet 在通过协议(protocol)关闭时会向您的类发送消息,因此不需要#import 您的任何类。)

如果您有一个协议(protocol),并且几个不相关的类将与该协议(protocol)的委托(delegate)进行交互,那么将协议(protocol)放在它自己的文件中是一个很好的指标,因为该协议(protocol)实际上并不与一个特定的类相关联。

关于iphone - 在 Objective-C 中在哪里声明重用协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10843632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com