Objective-C アプリケーションのMonoTouchバインディングに取り組んでいます。iOS Binding Walkthroughを参考にしました。
i386、ARM、そしてユニバーサル ライブラリのライブラリを生成しました。さらに、MonoTouch Binding Project を作成しました。Sharpie を使用して ApiDefinition を生成し、以前に生成したユニバーサル ライブラリを追加しました。このプロジェクトをビルドすると、次のエラーが発生します。
ADClusterAnnotation.g.cs(86,86): エラー CS0533:
AnnotationClusterMap.ADClusterAnnotation.Coordinate' は、継承された抽象メンバー MonoTouch.MapKit.MKAnnotation.Coordinate' を非表示にします (CS0533)
以下は、ADClusterAnnotation のコード スニペットです。
ファイル ADClusterannotation.h
@interface ADClusterAnnotation : NSObject <MKAnnotation> {
CLLocationCoordinate2D _coordinates;
}
@property (nonatomic) CLLocationCoordinate2D coordinate;
@end
ファイル ADClusterAnnotation.m
@synthesize coordinate = _coordinates;
ApiDefinition のコード スニペットを次に示します。
[BaseType (typeof (MKAnnotation))]
public partial interface ADClusterAnnotation {
[Export ("coordinate")]
CLLocationCoordinate2D Coordinate { get; set; }
}
したがって、ApiDefinition で何かを変更する必要があると思います。API定義のADClusterAnnotationからCoordinateを外してみましたが、abstractメンバーを実装しているというエラーが出てしまいます。Monotouch バインディングに関して何が欠けていますか?