尝试构建绑定项目时出现以下错误。信息有点神秘,我不确定是什么坏/坏。
错误CS0117:
MonoTouch.Constants' does not contain a definition for
NimbusLibrary'(CS0117)(MonoTouch.Nimbus)错误CS1502:最佳重载方法匹配 `MonoTouch.ObjCRuntime.Dlfcn.dlopen(string,int)'有一些无效 参数(CS1502)(MonoTouch.Nimbus)
错误CS1503:要键入的参数
#1' cannot convert
object'表达式 `string'(CS1503)(MonoTouch.Nimbus)
我有时会注意到,当我关闭并重新打开项目,然后重建时,错误消息不会立即出现,但不久之后,它们会立即回来。
有什么想法吗?如果您需要我的绑定项目的源代码,请告诉我。
答案 0 :(得分:4)
这是因为您错过了最后记录的[FieldAttribute]上的参数
如果您是静态链接,则没有要绑定的库,所以您 需要使用__Internal名称:
[Static]
interface LonelyClass {
[Field ("MyFieldFromALibrary", "__Internal")]
NSString MyFieldFromALibrary { get; }
}
所以你的绑定现在看起来像这样
[BaseType (typeof (NIRecyclableView))]
public partial interface NIPageView : NIPagingScrollViewPage
{
[Field ("NIPagingScrollViewUnknownNumberOfPages")]
int NIPagingScrollViewUnknownNumberOfPages { get; }
[Field ("NIPagingScrollViewDefaultPageMargin")]
float NIPagingScrollViewDefaultPageMargin { get; }
}
它一定是这样的
[BaseType (typeof (NIRecyclableView))]
public partial interface NIPageView : NIPagingScrollViewPage
{
[Field ("NIPagingScrollViewUnknownNumberOfPages", "__Internal")]
int NIPagingScrollViewUnknownNumberOfPages { get; }
[Field ("NIPagingScrollViewDefaultPageMargin", "__Internal")]
float NIPagingScrollViewDefaultPageMargin { get; }
}
这是因为最后的所有静态库都将与主可执行文件合并。
希望这有帮助。
亚历