gpt4 book ai didi

ios - 什么时候使用像 (id)self 这样的东西?

转载 作者:可可西里 更新时间:2023-11-01 17:07:41 27 4
gpt4 key购买 nike

我在我正在使用的代码的某些区域看到了这一点。

searchBar.delegate = (id<UISearchBarDelegate>)self;

我的问题是...

为什么不让当前类成为 UISearchBar 的委托(delegate)呢?通过添加 <UISearchBarDelegate>在类的界面中?

是否存在上述代码比让类成为委托(delegate)更好的情况?

这两种方式都适合我,但我想了解为什么我可能想要使用其中一种。

最佳答案

强制转换方法可以被认为是作弊。如果委托(delegate)类不想公开声明协议(protocol)一致性(但为什么它被公开设置为委托(delegate)),则会使用它。或者如果委托(delegate)类没有实现所有必需的方法,那么声明协议(protocol)一致性将导致警告。

通常更好的方法是声明协议(protocol)一致性(公开 (.h) 或私下 (.m))。

关于ios - 什么时候使用像 (id<UISearchBarDelegate>)self 这样的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21408008/

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