Кажется, я получаю новую ошибку при использовании LLVM Compiler 2.0, которого у меня раньше не было.
У меня есть протокол с именем DTGridViewDelegate , определенный как:
@protocol DTGridViewDelegate <UIScrollViewDelegate>
У меня есть свойство с именем delegate
в DTGridView (подкласс UIScrollView, который сам по себе имеет свойство delegate
).Это определяется как:
@property (nonatomic, assign) IBOutlet id<DTGridViewDelegate> delegate;
Теперь я получаю сообщение:
DTGridView.h:116:63: error: property type 'id<DTGridViewDelegate>' is incompatible with type 'id<UIScrollViewDelegate>' inherited from 'UIScrollView'
Поскольку я сказал, что DTGridViewDelegate соответствуетдля UIScrollViewDelegate я подумал, что было бы нормально переопределить это свойство таким образом, и действительно, это первый компилятор, который предположил, что есть проблема.
Я исправил ошибку, объявив свойство следующим образом:
@property (nonatomic, assign) IBOutlet id<DTGridViewDelegate, UIScrollViewDelegate> delegate;
Мне интересно, это проблема с компилятором?