ios - 类型转换 SIGABRT
问题描述
我正在尝试从框架动态加载类,但应用程序因转换发送 SIGABRT 信号而崩溃:
let newClassType = NSClassFromString("MyFramework.CustomClass") as! BaseClass.Type
使用在 MyApp 中声明的类,它与框架的类一样工作得很好,但没有转换。
BaseClass.swift(MyApp.xcodeproj 并复制到 MyFramework):
public class BaseClass{
...
}
CustomClass.swift(MyFramework.xcodeproj):
public class CustomClass: BaseClass{
...
}
可能是什么问题?
解决方案
来自我建议使用的问题和评论typealias
import MyFramework
typealias FrameworkBaseClass = MyFramework.BaseClass
typealias FrameworkCustomClass = MyFramework.CustomClass
然后如果你想在其他文件中使用FrameworkBaseClass
,你不必导入FrameworkCustomClass
.swift
MyFramework
推荐阅读
- algorithm - 证明中心二项式系数的渐近下界
- javascript - 从 innerHTML Javascript 字符串创建单独的类名
- javascript - 异步错误捕获器包装函数导致我返回的承诺未定义
- c - 如何在 4 字节有符号整数的高 16 位中嵌入一个数字?
- c# - 从winforms的主菜单打开主应用程序的最佳方式
- javascript - SyntaxError:意外的标识符“Flickity”。导入调用只需要一个参数
- firebase - 将相同的 FIrestore 数据分发到不同的 Flutter 小部件的最佳方式
- javascript - 我们如何解决 TypeError is not a function
- javascript - 这个简单的功能不起作用。为什么?我收到“意外的标识符”错误
- core-data - TextField 核心数据自动保存