gpt4 book ai didi

xamarin.ios - 符合其他协议(protocol)的绑定(bind)协议(protocol)

转载 作者:行者123 更新时间:2023-12-04 02:58:56 25 4
gpt4 key购买 nike

我正在尝试使用 MonoTouch btouch 工具绑定(bind)协议(protocol)

Objective-C 协议(protocol):

@protocol KalDataSource <NSObject, UITableViewDataSource>
- (void)presentingDatesFrom:(NSDate *)fromDate to:(NSDate *)toDate delegate:(id<KalDataSourceCallbacks>)delegate;
- (NSArray *)markedDatesFrom:(NSDate *)fromDate to:(NSDate *)toDate;
- (void)loadItemsFromDate:(NSDate *)fromDate toDate:(NSDate *)toDate;
- (void)removeAllItems;
@end

BTouch 绑定(bind):

[BaseType(typeof(UITableViewDataSource)]
interface KalDataSource {
...
}

但这会导致 btouch 错误:

error CS0534: `Kal.KalDataSource' does not implement inherited abstract member...

当然,缺少的成员是 GetCell 和 RowsInSection。我想创建 KalDataSource 的部分类实现,但仍然需要将其虚拟化以供消费者定义这些方法。暂停?

更新:经过澄清后,似乎无法立即绑定(bind)“继承”自其他 UIKit 协议(protocol)的协议(protocol)。我在这里提交了一个错误:

https://bugzilla.xamarin.com/show_bug.cgi?id=3526

最佳答案

使用最新版本的 btouch,您可以列出您实现的协议(protocol),在本例中,如下所示:

[BaseType (typeof (NSObject))]
interface KalDataSource : UITableViewDataSource {
}

请注意,这是将 [BaseType] 与将成为其子类的 NSObject 一起使用,而是将内联 UITableViewDataSource 中的方法。

关于xamarin.ios - 符合其他协议(protocol)的绑定(bind)协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9323531/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com