나는 MonoTouch의 btouch 도구를바인딩 프로토콜
목표 - C 프로토콜을 사용하여 프로토콜을 결합하는 것을 시도하고있다 :
@protocol KalDataSource <NSObject, UITableViewDataSource>
- (void)presentingDatesFrom:(NSDate *)fromDate to:(NSDate *)toDate delegate:(id<KalDataSourceCallbacks>)delegate;
- (NSArray *)markedDatesFrom:(NSDate *)fromDate to:(NSDate *)toDate;
- (void)loadItemsFromDate:(NSDate *)fromDate toDate:(NSDate *)toDate;
- (void)removeAllItems;
@end
BTouch 바인딩 :
[BaseType(typeof(UITableViewDataSource)]
interface KalDataSource {
...
}
을하지만이 btouch 오류가 발생합니다.
error CS0534: `Kal.KalDataSource' does not implement inherited abstract member...
누락 된 멤버는 물론 GetCell 및 RowsInSection입니다. KalDataSource의 부분 클래스 구현을 만드는 방법을 생각했지만 소비자가 이러한 메서드를 정의 할 수 있도록 가상으로 만들 필요가 있습니다. 할프?
업데이트 : 설명이 끝나면 다른 UIKit 프로토콜에서 "상속 된"프로토콜을 즉시 바인딩 할 수없는 것으로 보입니다. 내가 여기에 버그가 제출 한 : btouch의 최신 버전으로
https://bugzilla.xamarin.com/show_bug.cgi?id=3526
정확한 명령 줄은 무엇입니까? 나는 문제없이 유사한 것을 시도했다. (한번 속성에 누락 된')'을 추가했다. – poupou
흠, 흥미 롭다. 어떤 속성이 빠졌는가? 빌드를위한 Makefile : https://gist.github.com/c40dc80b0253fd93d30b – Anuj
누락 된 * 속성 * - 누락 된 닫는 * 괄호 * ;-)) 그리고 그것은 나를 위해 일했습니다. (또한 Miguel도 그렇습니다) 빌드 (빠른 테스트 용) – poupou