MonoTouch绑定源自MKAnnotation

时间:2011-04-01 20:54:17

标签: xamarin.ios

我正在尝试为WikitudeAPI创建绑定,以便在我的应用中提供AR功能。

到目前为止,我试图保持它非常简单,我只是绑定了一些方法和最少的类。其中一个类被声明为

@interface WTPoi : NSObject<MKAnnotation> {

}

要创建绑定,我已将我的绑定声明为

using MonoTouch.Foundation;
using MonoTouch.MapKit;
namespace AR {
  [BaseType(typeof(MKAnnotation))]
  interface WTPoi {
  }
}

当我对它运行btouch时,我得到一个中止陷阱错误 “第2行:1959年中止陷阱”

我尝试过使用其他类型作为BaseType只是为了看,他们大多数都在工作,关于我做错了什么想法?

2 个答案:

答案 0 :(得分:0)

我尝试使用您的代码获取中止陷阱错误,但我没有成功。但是,你在api定义中肯定有一个错误。

替换

[BaseType(MKAnnotation)]

使用:

[BaseType(typeof(MKAnnotation))]

答案 1 :(得分:0)

原来它是btouch中[Model]继承中的一个错误。

将界面声明为:

namespace AR {
    [BaseType(typeof(NSObject))]
    public interface WTPoi {
        [Export ("coordinate")]
        CLLocationCoordinate2D Coordinate { get; set; }

        [Export ("title")]
        string Title { get; }

        [Export ("subtitle")]
        string Subtitle { get; }
    }  
}

工作正常但你失去了MKAnnotation的继承。