私は以前に代表団と一緒に働いたことがあります。スーパービューからサブビュー クラスへの委任を作成する方法を知っています。ただし、同じアプローチを使用して逆の方法で実行しようとしていますが、機能していません! 委任は一方向のみに機能することを意図していますか、それともクラス間の双方向通信として使用する方法/トリックはありますか? 親/スーパービュー .h クラスで次のようなエラーが表示されます。
「SubViewControllerDelegate」のプロトコル定義が見つかりません
私のコードは次のようになります: subview.h
#import <UIKit/UIKit.h>
#import "SuperViewController.h"
@protocol SubViewControllerDelegate <NSObject>
- (void)someMethod:(NSData *)data;
@end
@interface SubViewController : UIViewController
@property (weak, nonatomic) id <SubViewControllerDelegate> delegate;
@end
subview.m:
[self.delegate someMethod:data];
SuperView.h
#import <UIKit/UIKit.h>
#import "SubViewController.h"
@interface SuperViewController : UIViewController <SubViewControllerDelegate>
@end
SuperView.m:
#pragma mark - SubView Controller Delegate Methods
- (void)someMethod:(NSData *)data{
NSLog(@"%@", data);
}
私は何か間違っているか、何かを見逃していますか?