gpt4 book ai didi

objective-c - 类别类方法上的 performSelector

转载 作者:行者123 更新时间:2023-11-28 17:35:10 24 4
gpt4 key购买 nike

我有一个名为 EventEntry 的 NSManagedObject 子类,它由 Xcode 自动生成,我尽量不去碰它(以防我更改模型并想重新生成)。所以我将任何添加的功能都放在一个名为 EventEntry+Extended 的类别中。

其中一个功能是名为 eventEntriesByUser 的类方法。我已经订阅了定期调用此类方法并使用 performSelector 来调用它。

EventEntry+Extended.h

@interface EventEntry (Extended)

+ (void)eventEntriesByUser;

@end

EventEntry+Extended.m

@implementation EventEntry (Extended)

+ (void)eventEntriesByUser
{
trace(@"%s", __PRETTY_FUNCTION__);
}

@end

但是当我尝试这样做时我遇到了崩溃。

[EventEntry performSelector:@selector(eventEntriesByUser)];

错误...

+[EventEntry eventEntriesByUser]: unrecognized selector sent to class 0xbda08

如果我将此方法移动到 EventEntry 中,它会按预期工作。我也试过在我调用 performSelector 的文件中包含 EventEntry+Extended.h 但没有成功。有什么想法吗?

最佳答案

不知何故,目标成员资格在类别文件中被关闭,这就是未添加方法的原因。我可能会删除这个问题。

关于objective-c - 类别类方法上的 performSelector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10014022/

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