我在Xamarin.iOS上遇到绑定问题。
我有2个图书馆: libA.a libB.a
libB.a依赖于libA.a类。在 libA 我有这个类:
namespace ABC {
[BaseType (typeof (NSObject))]
public partial interface ClassAbc {
[Export ("setString:")]
void SetString (string abc);
}
}
在 libB 中我有这段代码:
namespace ABCUsage {
[BaseType (typeof (NSObject))]
public partial interface ClassAbcUsage {
[Export ("setAbc:")]
void SetAbc (ClassAbc abc);
}
}
我没有libA.a和libB.a的源代码,只有通用的静态库和头文件。
我尝试添加libA绑定项目和最终的A.dll作为libB绑定的参考,但它说"没有找到命名空间ABC"。
我应该如何为libB创建正确的绑定?
答案 0 :(得分:4)
您好,您可以在单个绑定项目中绑定任意数量的库,只需确保指定完全限定的类型名称
namespace ABC {
[BaseType (typeof (NSObject))]
public partial interface ClassAbc {
[Export ("setString:")]
void SetString (string abc);
}
}
namespace ABCUsage {
[BaseType (typeof (NSObject))]
public partial interface ClassAbcUsage {
[Export ("setAbc:")]
void SetAbc (ABC.ClassAbc abc);
//^^^^^
}
}
希望这有帮助。