Tom*_*myG 0 iphone xcode delegates objective-c ios
没有调用协议方法的另一种情况 - 不知道我在这里做错了什么...
这是代码,省略不必要的信息......
第一个头文件: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
Run Code Online (Sandbox Code Playgroud)
第一.m文件:AccessNumber.m - 我打电话从viewDidLoad中协议方法只是为了测试目的,它应该基本上得到来自另一种方法调用,但对于这个康沃的缘故一样的东西(都尝试当然)
#import "AccessNumber.h"
#import "History.h"
@synthesize delegate;
- (void)viewDidLoad
{
[super viewDidLoad];
....
[[self delegate] processSuccessful:YES];
}
Run Code Online (Sandbox Code Playgroud)
第二个文件头:History.h
@interface History : UIViewController <UITableViewDelegate, UITableViewDataSource, AddItemDelegate> {
....
}
Run Code Online (Sandbox Code Playgroud)
历史中的方法实现
- (void) processSuccessful: (BOOL)success {
NSLog(@"SUCCESS");
}
Run Code Online (Sandbox Code Playgroud)
感谢任何帮助.谢谢!
在代码中我没有看到类似的东西:
theAccessNumber.delegate = self;
Run Code Online (Sandbox Code Playgroud)
您必须将History实例设置为AccessNumber实例的委托属性.
问候.
| 归档时间: |
|
| 查看次数: |
5027 次 |
| 最近记录: |