私はObjective-Cで数日間コーディングを始めましたが、委任について本当に混乱しています。誰か助けてもらえますか?
MyClassA.hで
@protocol MyClassADelegate <NSObject>
- (void)haveANewMessage:(NSString*)message;
@end
@interface myClassA : NSObject <NSStreamDelegate> {
__unsafe_unretained id<MyDelegate> _delegate;
}
@property (nonatomic, assign) id<MyClassADelegate> delegate;
@end
myClassB.hで
@interface myClassB : NSViewController <MyTableViewDelegate,MyClassADelegate>
@property (nonatomic, strong) myClassA* instance;
@property (nonatomic, strong) IBOutlet NSTableView* tableView;
@property (nonatomic, strong) NSMutableArray* messages;
@end
myClassA.mで
私は持っています
[self.delegate haveANewMessage:@"Messages"];
そしてmyClassB.mで
私は持っています
- (void) haveANewMessage:(NSString *)message{
NSLog(@"Get here!");
[self.messages addObject:message ];
[self.tableView reloadData];
}
問題は、テーブルビューに何も表示されないことです。何か助けは?(実装されたテーブルビュー関連メソッド)