我正在尝试为 Xamarin 的 iOS 框架(由 Objective Sharpie 生成)创建绑定,但它在字段类型上遇到了问题:
结构体.cs:
public enum FooType : byte
{
A = 0,
B = 1
}
ApiDefinition.cs:
[Static]
partial interface Constants
{
// extern const FooType Foo;
[Field("Foo", "__Internal")]
FooType Foo { get; }
}
它正在生成错误:
错误 BI1014:bgen:字段类型不受支持:'Namespace.Constants Foo' 的 FooType。
字段中不允许使用枚举吗?我该如何解决这个错误?
编辑2:显然可以是字段的类型列表非常有限,也许我应该将枚举类型转换为Int32?
NSString NSArray nint / int / long nuint / uint / ulong nfloat / float double CGSize System.IntPtr Enums
编辑 3:将枚举类型转换为 Int32 有效,但这有效吗?代码会正确运行并返回有效值吗?