Binding 如何绑定NSObject<;EAAccessoryDelegate、NSStreamDelegate>;单点触控?

Binding 如何绑定NSObject<;EAAccessoryDelegate、NSStreamDelegate>;单点触控?,binding,xamarin.ios,xamarin,Binding,Xamarin.ios,Xamarin,我正在尝试绑定一个库,我对.h文件有以下定义 @interface FbFAccessoryController : NSObject <EAAccessoryDelegate, NSStreamDelegate> { id <FbFmobileOneDelegate> _delegate; BOOL ScannerStarted; } @property (nonatomic, assign) id <FbFmobileOneDeleg

我正在尝试绑定一个库,我对.h文件有以下定义

@interface FbFAccessoryController : NSObject <EAAccessoryDelegate, NSStreamDelegate> {

    id <FbFmobileOneDelegate> _delegate;

    BOOL    ScannerStarted;
}

@property (nonatomic, assign) id <FbFmobileOneDelegate> delegate;

@property (readonly, nonatomic) BOOL Version1b;

- (BOOL)mobileOneConnected;

@property (readonly, nonatomic) NSNumber *VoltIndex;

@property (readonly, nonatomic) BOOL ScannerStarted;

- (void)startScanner;

- (void)stopScanner;

- (void)checkBattery;

@end

协议应该用
[Model]
属性修饰,这样您就可以像实现接口一样实现它们

因此,如果不使用ObjectiveSharpie,它应该如下所示:

[BaseType(typeof(NSObject))]
接口FbFAccessoryController:EAAccessoryDelegate、NSStreamDelegate{
[导出(“委托”,ArgumentSemantic.Assign)]
FbFmobileOneDelegate委托{get;set;}
// ... //
}
假设代理的定义如下:

[Model]//看,没有基类型
接口EAAccessoryDelegate{
//[出口]您需要什么
}
[型号]
接口NSStreamDelegate{
//[出口]您需要什么
}
@class FbFAccessoryController;

@protocol FbFmobileOneDelegate <NSObject>

@required

- (void) mobileOneAccessoryController:(FbFAccessoryController *)mobileOne didChangeConnectionStatus:(BOOL)connected;

- (void) mobileOneAccessoryController:(FbFAccessoryController *)mobileOne didReceiveData:(NSData *)data;

@optional

- (void) mobileOneAccessoryController:(FbFAccessoryController *)mobileOne didReceiveError:(NSError *)error;

- (void) mobileOneAccessoryController:(FbFAccessoryController *)mobileOne didReceiveScannerStartStop:(BOOL)started;

- (void) mobileOneAccessoryController:(FbFAccessoryController *)mobileOne didReceiveDataSpin:(BOOL)started;

@end
public partial interface FbFAccessoryController : EAAccessoryDelegate, NSStreamDelegate {


        [Export ("delegate", ArgumentSemantic.Assign)]
        FbFmobileOneDelegate Delegate { get; set; }

        [Static, Export ("sharedController")]
        FbFAccessoryController SharedController { get; }

        [Export ("Version1b")]
        bool Version1b { get; }

        [Export ("mobileOneConnected")]
        bool MobileOneConnected { get; }

        [Export ("VoltIndex")]
        NSNumber VoltIndex { get; }

        [Export ("ScannerStarted")]
        bool ScannerStarted { get; }

        [Export ("startScanner")]
        void StartScanner ();

        [Export ("stopScanner")]
        void StopScanner ();

        [Export ("checkBattery")]
        void CheckBattery ();
    }