从Interface Builder加载具有通用约束的UIView子类的解决方法?

问题描述 投票:0回答:1

假设我有一个具有通用约束的UIView子类:

class CustomView<DataType: Codable>: UIView {
    var model: DataType?
}

而且我想从IB加载此视图

enter image description here

这会使应用程序崩溃:“ Interface Builder文件中的未知类_TtC5Test110CustomView”。显然,这与以下事实有关:IB不知道为满足通用约束而需要传递的类型。我可以简单地在代码中实例化视图并传递约束类型。但我想知道是否有解决方法,以便仍然可以从IB加载视图。

swift generics interface-builder xib swift5
1个回答
0
投票

但是我想知道是否有解决方法,因此仍然可以从IB加载视图。

不,没有。 IB是Objective-C可可粉。无法查看或操纵Swift泛型。

© www.soinside.com 2019 - 2024. All rights reserved.