iOS绘图:图形上下文命令与技巧全解析
1. 自定义UIView黑色背景问题
在代码中创建具有 draw(_:) 实现的自定义 UIView 子类实例时,可能会发现视图背景为黑色,这常让初学者困惑。黑色背景通常在以下两种情况同时出现时产生:
- 视图的 backgroundColor 为 nil 。
- 视图的 isOpaque 为 true 。
当使用 init(frame:) 在代码中创建 UIView 时,默认这两个条件都满足。若想去除黑色背景,可重写 init(frame:) 方法,将 isOpaque 设为 false ,示例代码如下:
class MyView : UIView {
override init(frame: CGRect) {
super.init(frame:frame)
self.isOpaque = false
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
而通过nib创建的
超级会员免费看
订阅专栏 解锁全文
56

被折叠的 条评论
为什么被折叠?



