我在我们的项目中使用单声道绑定包含了一些来自“Cocoa Controls”的控件,它们都工作得很好,除非有一个我无法工作,我希望有人能发现一个明显的错误。
这是目标C头
typedef enum {
kWTShort = 1,
kWTLong = 5
} WToastLength;
@interface WToast : UIView
+ (void)showWithText:(NSString *)text;
+ (void)showWithImage:(UIImage *)image;
+ (void)showWithText:(NSString *)text length:(WToastLength)length textColor:(UIColor *) textColor backgroundColor:(UIColor *) backGroundColor;
+ (void)showWithImage:(UIImage *)image length:(WToastLength)length;
@end
这是Mono ApiDefinition
[BaseType (typeof(UIView))]
interface WToast
{
[Export("showWithText:")]
void ShowText(String text);
[Export("showWithText:length:textColor:backgroundColor:")]
void ShowText(string text,ToastLenght lenght,UIColor textColor,UIColor backgroundColor);
}
注意我没有包含enum ToastLength
对象实例化的任何方式但是当我调用ShowText时,程序无法找到选择器[WToast showWithText:]
我希望有人可以提供帮助
尊敬ChristianStœrAndersen
答案 0 :(得分:3)
我想我只需要稍微离开代码。
答案是我有点厚了
你会注意到目标c函数是
+ (void)showWithText:(NSString *)text;
不是
- (void)showWithText:(NSString *)text;
Mono定义应该是
[Static,Export("showWithText:")]
void ShowText(String text);
不
[Export("showWithText:")]
void ShowText(String text);
全部谢谢