C# 调用绑定方法时无法识别选择器

C# 调用绑定方法时无法识别选择器,c#,ios,binding,xamarin.ios,xamarin,C#,Ios,Binding,Xamarin.ios,Xamarin,我正在尝试将我创建的基本Objective-C库绑定到Xamarin项目。.h文件是: #import <Foundation/Foundation.h> @import UIKit; @interface StarIOFunctions : NSObject { } + (NSMutableData *)GetDataToSendToPrinter:(UIImage *)image; @end 一切都可以编译,但当我在应用程序中运行时: UIImage image = U

我正在尝试将我创建的基本Objective-C库绑定到Xamarin项目。.h文件是:

#import <Foundation/Foundation.h>
@import UIKit;

@interface StarIOFunctions : NSObject {

}

+ (NSMutableData *)GetDataToSendToPrinter:(UIImage *)image;

@end
一切都可以编译,但当我在应用程序中运行时:

UIImage image = UIImage.FromBundle("image1.png");
StarIOFunctions functions = new StarIOFunctions ();
var output = functions.GetDataToSendToPrinter (image);
我的应用程序崩溃,出现以下错误:

Objective-C exception thrown.  Name: NSInvalidArgumentException Reason: -[StarIOFunctions GetDataToSendToPrinter:image]: unrecognized selector sent to instance 0x7cdb50f0

现在,我认为这与我发送一个图像有关,而不是指向图像的指针-但我完全迷路了,无法确定我到底做错了什么。

似乎在选择器名称中包含了参数名称,即

[Export ("GetDataToSendToPrinter:image")]
应该是:

[Export ("GetDataToSendToPrinter:")]
最后一列“:”表示需要一个参数,但不需要命名它(在选择器中),因为前面的字符串应该暗示它

[Export ("GetDataToSendToPrinter:")]