ios - 何时使用 Categories Objective-C?

标签 ios objective-c oop objective-c-category

如果我有一种方法可以将动画附加到 UI 元素,而不是将此方法的代码复制/粘贴到许多 viewcontrollers,我可以只创建一个 class 来保存方法然后导入它吗?

我认为在这种情况下使用 category 没有意义,因为我需要在多个 viewcontrollerscategory 中使用此方法> 是单个 viewcontroller 的扩展。

最佳答案

类别是类的扩展,而不是类的特定实例。并且,类别对类所做的任何修改都可用于所有子类(与 OOP 中类的其他方法一样)。

因此,如果您在 NSObject 上添加一个类别,基本上整个应用中的所有类都可以访问该类别中的方法 - 因此您需要非常小心在其中添加的方法。

在很多情况下,是添加类别还是帮助类是个人偏好,两者都可以。

关于ios - 何时使用 Categories Objective-C?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23085431/

相关文章:

android - 为 iOS 和 Android 编译 C++ 代码 (Xcode)。这是真的吗?

ios - Swift CodeUnit 到 String

objective-c - 警告 : "format not a string literal and no format arguments"

ios - 使用 self 关键字时的困惑

javascript - jquery事件函数用oop调用?

c++ - 如何在 C++ 中处理对象的混合集合

ios - 我能否以编程方式重启我的 iPhone 应用程序以在 Swift 中应用语言更改

php - 从iOS设备获取时区,并在php中请求Web API

objective-c - 防止类在 Objective-c 中被子类化

php - 哪个类理想地分配属性 : User or UserFactory?