【发布时间】:2012-03-13 01:37:21
【问题描述】:
另一个没有调用协议方法的情况 - 不知道我在这里做错了什么......
这里是代码,省略了不必要的信息...
第一个头文件:AccessNumber.h
@protocol AddItemDelegate <NSObject>
@required
- (void) processSuccessful: (BOOL)success;
@end
@interface AccessNumber : UIViewController <UITableViewDelegate, UITableViewDataSource, ABPeoplePickerNavigationControllerDelegate, UIAlertViewDelegate> {
id <AddItemDelegate> delegate;
}
@property (retain) id <AddItemDelegate> delegate;
@end
第一个 .m 文件:AccessNumber.m - 我从 viewdidload 调用协议方法只是为了测试目的,它基本上应该从另一个方法调用,但为了这个 convo 也是一样的(当然都试过了)
#import "AccessNumber.h"
#import "History.h"
@synthesize delegate;
- (void)viewDidLoad
{
[super viewDidLoad];
....
[[self delegate] processSuccessful:YES];
}
第二个文件头:History.h
@interface History : UIViewController <UITableViewDelegate, UITableViewDataSource, AddItemDelegate> {
....
}
history.m中的方法实现
- (void) processSuccessful: (BOOL)success {
NSLog(@"SUCCESS");
}
感谢任何帮助。谢谢!
【问题讨论】:
标签: iphone objective-c ios xcode delegates