ios - 如何指定嵌套的自定义 View 类?

标签 ios xcode swift storyboard nested-class

可用 嵌套类 SuperView 和 NestedView。

class SuperView : UIImageView {

    class NestedView : UIImageView {
        var text : String = "Nested View"
    }

    var text : String = "Super View"
    var nested : NestedView?

}

我想在 Storyboard场景的检查器中为 UIImageView 设置名为“Custom Class Name”的属性值“NestedView”。但是 Interface Builder 找不到“NestedView”类。

enter image description here

最佳答案

此时,我认为 Interface Builder 只能识别 Objective-C 类的名称。您仍然可以使用 @objc 关键字让 Interface Builder 查找嵌套类:

class SuperView: UIView {
  @objc(SVNestedView) class NestedView: UIImageView {
  }
}

然后,在 Interface Builder 中,指定 View 属于 SVNestedView 类。由于 Objective-C 没有命名空间,您仍然需要为每个嵌套类选择唯一的名称,但至少 Swift 端已正确命名空间。

关于ios - 如何指定嵌套的自定义 View 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29066073/

相关文章:

ios - 我可以拥有一个应用程序的两个版本,且具有不同的 BundleId 和相同的显示名称吗?

ios - 旋转后键盘延伸高度不正确

ios - 非公开 API 使用

swift - 无效 session token (代码 : 209 Version: 1. 7.4)

ios - 通过蓝牙 iOS 设备之间的连接

objective-c - 来自 UIDatePicker 的 UITableViewCell 中的实时值

objective-c - 具有特定位置的 MKMapItem

ios - 核心数据应用程序的 NSRangeException 异常

swift - 按特定类(class)名称搜索 child

ios - 如何更改二维码的颜色