OGeek|极客世界-中国程序员成长平台

标题: objective-c - Monotouch 物镜 C 绑定(bind) [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 17:24
标题: objective-c - Monotouch 物镜 C 绑定(bind)

我在我们的项目中使用单声道绑定(bind)包含了一些来自“Cocoa Controls”的控件,它们都可以正常工作,除了有一个我无法工作我希望有人能发现一个明显的错误。

这是 Objective-C header

typedef enum {
kWTShort = 1,
kWTLong = 5
} WToastLength;

@interface WToast : UIView

+ (void)showWithTextNSString *)text;
+ (void)showWithImageUIImage *)image;


+ (void)showWithTextNSString *)text lengthWToastLength)length textColorUIColor *)    textColor backgroundColorUIColor *) backGroundColor;
+ (void)showWithImageUIImage *)image lengthWToastLength)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);
}

注意我没有包含枚举 ToastLength

对象实例化的任何方式,但是当我调用 ShowText 时,程序找不到选择器 [WToast showWithText:]

希望有人能帮忙

问候克里斯蒂安·斯托尔·安徒生



Best Answer-推荐答案


我想我只需要暂时远离代码。

答案是我有点厚

你会注意到 objective-c 函数是

+ (void)showWithTextNSString *)text;

不是

- (void)showWithTextNSString *)text;

Mono 的定义应该是

[Static,Export("showWithText:")]
   void ShowText(String text);

不是

[Export("showWithText:")]
   void ShowText(String text);

谢谢大家

关于objective-c - Monotouch 物镜 C 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13081288/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4