考虑4个文件:Login.h、Login.m、Handler.h、Handler.m
Login.h
@class Handler
NSString *allResponse;
- (void)handleAllResponse:(NSString*m)response passSelf:(NikeLogin*)LoginSelf;
Login.m
#import Handler.h
[self handleAllResponse:response passSelf:self];
Handler.h
#import Login.h
NSString *allResponse;
Handler.m
- (void)handleAllResponse:(NSString*)response passSelf:(NikeLogin*)LoginSelf
{
allResponse=[LoginSelf parseCommunities:response];
//variables assigned values
}
-(NSString*)parseCommunities:(NSString*)response
{
//code
}
编译器无法识别 Handler.h 中的 handleAllCommunitiesResponse 方法定义,因此无法从 Login.m 调用它。此外,handleAllCommunitiesResponse 方法中的变量必须在 Handler.h 中重新声明。这样做的主要目的是在 Login.h 中声明方法并在 Handler.m 中定义它们以进行模块化,在某些情况下,如上所述,该方法是从 Login.m 中调用的在上面的代码中,self 是从 Login.m 传递的,因此所有方法和变量都可以在 Handler.m 中访问,但它没有发生。
请帮忙!!