在Xamarin.iOS中为2个依赖的静态库创建绑定

时间:2014-05-04 18:28:32

标签: c# ios binding xamarin.ios xamarin

我在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创建正确的绑定?

1 个答案:

答案 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);
                    //^^^^^
    }
}

希望这有帮助。

相关问题