是否可以创建在 Objective C 中手动开发的核心数据实体的快速扩展?

Posted

技术标签:

【中文标题】是否可以创建在 Objective C 中手动开发的核心数据实体的快速扩展?【英文标题】:Is it possible to create swift extension of Core Data Entity developed manually in Objective C? 【发布时间】:2020-05-25 07:08:28 【问题描述】:

我正在使用核心数据开发项目。现在这个核心数据文件是手动添加到目标 C 中的。

有一个名为 size 的属性是 NSNumber。 我需要创建这个实体的快速扩展来实现协议,它具有相同的变量“大小”,但作为 Int64

extension TestEntity: Item 
    var size: Int64

我尝试在上述代码之前添加扩展以将 NSNumber 转换为 Int64

extension TestEntity: Item 
    @NSManaged public var size: Int64

但它也显示错误 - “类型 TestEntity 不符合协议项”

【问题讨论】:

【参考方案1】:

这是做不到的。在这种情况下,建议从 Objective C 文件中删除扩展中添加的属性。或者将与核心数据相关的整个objective c文件转换为swift。

【讨论】:

以上是关于是否可以创建在 Objective C 中手动开发的核心数据实体的快速扩展?的主要内容,如果未能解决你的问题,请参考以下文章

在 Objective C 中从 NSDictionary 对象创建 URL 查询参数

目标-C。在不存在的路径上创建文件?

在 MKMapView Objective c 中手动更改用户的当前位置

Objective C - 内存管理和自动释放???

是否可以在 Objective c 中打开正在运行的后台应用程序

iOS开发系列—Objective-C之内存管理