调用外部方法实际上调用了其他方法
我一定是已经睡着了,因为我看到了奇怪的东西。
我有一个名为 ListSorter (.h/.m) 的类,它有 2 个外部方法。
.h 看起来像:
@interface ListSorter : NSObject {
BOOL eersteKeer;
Menu_Versie_DrieAppDelegate *appDelegate;
}
-(void)convertList;
-(void)addItemToAlertList:item;
-(void)addItemToHistoryList:item;
在另一个类中,我在 .h 文件中导入了 ListSorter.h,并创建了它的一个实例:
#import "ListSorter.h"
@class ListSorter;
@interface CloseIncController : UIViewController {
ListSorter *sorter;
}
@property (nonatomic, retain) ListSorter *sorter;
因此,在 .m 文件中,我得到了:
@synthesize sorter;
...
//Somewhere down in an IB-action
[sorter addItemToHistoryList:keuze];
I NSLogged Both < code>addItemToAlertList 和 addItemToHistoryList
,但它总是调用 addItemToAlertList
。这是为什么呢?
I must be asleep already or something because I'm seeing weird things.
I've got a class, called ListSorter (.h/.m), which has 2 extern methods.
The .h looks like:
@interface ListSorter : NSObject {
BOOL eersteKeer;
Menu_Versie_DrieAppDelegate *appDelegate;
}
-(void)convertList;
-(void)addItemToAlertList:item;
-(void)addItemToHistoryList:item;
In an other class, I've imported ListSorter.h in the .h-file, and made an instance of it:
#import "ListSorter.h"
@class ListSorter;
@interface CloseIncController : UIViewController {
ListSorter *sorter;
}
@property (nonatomic, retain) ListSorter *sorter;
So, in the .m-file, I've got:
@synthesize sorter;
...
//Somewhere down in an IB-action
[sorter addItemToHistoryList:keuze];
I NSLogged both addItemToAlertList
and addItemToHistoryList
, but it always calls addItemToAlertList
. Why's that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以向按钮添加多个操作,请检查是否未将 addItemToAlertList 和 addItemToHistoryList 添加到同一按钮
you can add multiple action to a button, check if you don't add addItemToAlertList and addItemToHistoryList to the same button
通过创建两个类暂时解决了这个问题,两个类都使用其中一种方法。我的猜测是班级没有正确分配。
Solved it temporarily by creating two classes, both with one of the methods. My guess is the class didn't get allocated properly.