Mam klasę kontrolera widoku (MyViewController), która zajmuje się podklasą UIView (MyView). Nie chcę pozwolić żadnej klasie z wyjątkiem klasy kontrolera widoku o podklasie UIView, więc nie mogę zaimportować MyView.h
w MyViewController.h
.Objective-C "prywatne" protokoły?
Więc w MyViewController.m
, kładę
#import "MyViewController.h"
#import "MyView.h"
@interface MyViewController (PrivateObjects)
MyView *myView;
@end
...
Jednak, aby uzyskać informacje zwrotne od MyView używam delegata. Ten delegat musi wdrożyć protokół MyViewDelegate
.
Jak mogę wdrożyć protokół wewnątrz MyViewController
MyViewDelegate
bez konieczności #import
MyView.h
w MyViewController.h
?
Co jeśli delegat zawiera metodę '(BTW, nie można zadeklarować nową ivar w kategorii.) - (void) myView : (MyView *) myView textDidChange: (NSString *) text'? – ryyst