Tôi có một lớp điều khiển xem (MyViewController) mà đề với một lớp con UIView (MyView). Tôi không muốn để cho bất kỳ lớp nào ngoại trừ lớp điều khiển xem biết về lớp con UIView, vì vậy tôi không thể nhập MyView.h
trong MyViewController.h
.Giao thức "riêng tư" mục tiêu-C?
Vì vậy, trong MyViewController.m
, tôi đặt
#import "MyViewController.h"
#import "MyView.h"
@interface MyViewController (PrivateObjects)
MyView *myView;
@end
...
Tuy nhiên, để nhận được phản hồi từ MyView, tôi sử dụng một đại biểu. Đại biểu đó phải triển khai giao thức MyViewDelegate
.
Làm cách nào để triển khai giao thức MyViewDelegate
bên trong MyViewController
mà không cần phải #import
MyView.h
trong MyViewController.h
?
gì nếu các đại biểu chứa một phương thức '(BTW, bạn không thể khai báo một Ivar mới trong một danh mục.) - (void) MyView : (MyView *) myView textDidChange: (NSString *) text'? – ryyst