在目标C中:

@interface CustomDataSource : NSObject <UITableViewDataSource>

@end

Swift :

class CustomDataSource : UITableViewDataSource {

}

但是,将出现一条错误消息:

  1. 类型"CellDataSource"不符合协议"NSObjectProtocol"
  2. 类型"CellDataSource"不符合协议"UITableViewDataSource"

正确的方法应该是什么?

推荐答案

类型"CellDataSource"不符合协议"NSObjectProtocol"

您必须使类从NSObject继承以符合NSObjectProtocol.香草雨燕课程则不然.但UIKit的很多部分都是NSObject.

class CustomDataSource : NSObject, UITableViewDataSource {

}

但是:

类型"CellDataSource"不符合协议"UITableViewDataSource"

这是意料之中的事.在类实现协议的所有必需方法之前,您将收到错误.

所以,让我们开始编码:)

Swift相关问答推荐

TabView中的视频播放器意外播放

当我点击模拟器中的文本字段时,UIKit CLLocationButton崩溃

SwiftUI—如何识别单词并获取视觉中的位置

SwiftData:线程1:&Quot;NSFetchRequest找不到实体名称';提醒&q;的NSEntityDescription

SwiftUI轨迹绘制怪异

如何使用AsyncTimerSequence获取初始时钟,然后在指定的时间间隔内开始迭代?

使用变量(而非固定)的字符串分量进行Swift正则表达式

为什么Swift可以在没有足够信息的情况下推断类型?

RealityKit - 从中心zoom 模型

为什么我在我的 Swift iOS 应用程序项目中收到 Xcode 中的错误消息无法识别的 Select 器发送到类?

ConfirmationDialog取消swiftui中的错误

将 struct 作为泛型类型传递并访问该泛型类型属性

Swift 有没有办法在不使用 switch 语句的情况下获取关联值?

Reality Composer Tap Trigger 问题

不支持用作符合协议 AnyObject 的具体类型

使用 Swift 在 iOS 8 中为应用程序图标添加徽章

MKAnnotation Swift

如何将应用程序与 iOS 联系人应用程序集成?

从 Swift 初始化程序调用方法

NSLocationWhenInUseUsageDescription 警告,但我已经添加了