我为方法 swizzled 创建了一个类别UITextField
,它的名字是这样的UITextField+MaxLength
,我实现了+load
做 swizzled 的方法,但是我没有在前缀头或其他文件中导入它,只是在SomeViewController
.
我认为 swizzled 应该只适用于SomeViewController
,但为什么 swizzled 方法在每个UITextField
甚至 a中都被调用UISearchBar
?+load
当我运行应用程序时调用该方法?
编辑
我想我需要指出为什么我使用 swizzled,因为我想使用 KVO 来观察文本的变化,所以我 swizzledsetText
并关联了一个NSNumber
名为的属性displayLength
,所以,如果我不使用 KVO,我可以删除 swizzled 的部分这个类别,我可以将子字符串剪切到特定的最大长度。