swift - 使用枚举创建自定义视图
问题描述
我正在创建一个自定义视图,该视图具有一个枚举,可以在任何地方创建自定义形状。我想控制它enum
,Init
我不确定这是最好的方法
class ReadOnlyView: UIView {
public enum Corner {
case half
case quarter
}
public var corner = Corner.half
public init(corner: Corner) {
self.corner = corner
}
var textView = UITextView().autolayoutView()
它在init
'super.init' isn't called on all paths before returning from initializer
任何人都可以帮助我实现这个枚举的最佳方法是什么,我想在调用这个视图时,它还需要设置Corner
非常感谢
解决方案
此代码应该适合您:
class ReadOnlyView: UIView {
public enum Corner {
case half
case quarter
}
public var corner: Corner
public init(corner: Corner) {
self.corner = corner
super.init(frame: .zero)
}
@available(*, unavailable)
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
为了从 ReadOnlyView 创建一个对象,你应该这样做:
let view = ReadOnlyView(corner: .half)
推荐阅读
- sql - 单行中的一对多结果(电子邮件示例)
- java - Spring Batch StepScope 类和注解的区别?
- javascript - 如何在移动设备上不加载窗口事件侦听器?
- python - 如何按产生推理结果的模型 ID 组织推理结果?
- python - Python在错误的路径上创建文本文件
- qt - QGridLayout 中的项目不会换行
- firebase - 无法使用 vpc 无服务器连接器部署云功能
- blazor - 我可以分析从标签助手发送的参数吗?
- ansible - 创建收集托管主机信息并将它们写入每个主机上的文件的剧本
- python - 如何使用 openpyxl 将图像保存到 excel 文件中?