我为Xamarin iOS创建了一个绑定项目。我成功添加了本机库,创建了C#绑定,并解决了我尝试运行库(在iPhone模拟器上的应用程序中)后发现的所有数百个错误,只是为了解决此错误:
无法创建类型为'MyNamespace.STPPaymentCardTextField'的本机实例:尚未加载本机类。
这是objective-c中接口的签名:
@interface STPPaymentCardTextField : UIControl <UIKeyInput>
这是我在C#iOS绑定中得到的内容:
[BaseType(typeof(UIControl))]
[Protocol]
interface STPPaymentCardTextField : IUIKeyInput
我阅读了this stackoverflow的答案,并检查了为我的库构建的体系结构,以下是该体系结构,并考虑到我在iOS模拟器上运行该体系结构:
是:i386 x86_64
这是我用来构建库的脚本:
all: lib$(TARGET).a
lib$(TARGET)-i386.a:
$(XBUILD) -project $(PROJECT) -target $(TARGET) -sdk iphonesimulator -configuration Release
clean build
-mv $(PROJECT_ROOT)/build/Release-iphonesimulator/lib$(TARGET).a $@
lib$(TARGET).a: lib$(TARGET)-i386.a
xcrun -sdk iphoneos lipo -create -output $@ $^
clean:
-rm -f *.a *.dll
我该如何解决此错误?
您可以确保在框架下列出了“ UIKit”。 “本机引用->”本机库的属性“->”框架:UIKit“