假设我有一个方法:-[myClass getDataForUser:user]
,完成后它会调用委托(delegate)的方法gotData:
,结果显示在我的 main 上类(class)。例如,如果我对 getDataForUser:
进行两次调用:
[myClass getDataForUser:@"user1"];
[myClass getDataForUser:@"user2"];
如何区分委托(delegate)方法中的这两个调用?
编辑:
库是 MGTwitterEngine,我进行的两个调用是 -[_engine getDirectMessagesSinceID:1startingAtPage:1];
和 [_engine getSentDirectMessagesSinceID:1startingAtPage:1];
委托(delegate)方法是 directMessagesReceived:forRequest:
最佳答案
每次调用都使用 MGTwitterEngine 的实例,并为每个实例提供不同的委托(delegate)对象。在每个委托(delegate)对象中,您可以存储用户 ID。设置这些委托(delegate)对象,以便它们可以接受您的原始类作为它们的委托(delegate)。然后你最后可以使用 delegate gotData:(id)data forUser:(NSString *)user 。不漂亮,但可能有用。
关于objective-c - 区分对同一委托(delegate)方法的调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7999342/