每次创建UIScrollView
子类时,我都会向其添加UIImageView
。我从滚动视图的UIImageView
方法中获取了init
的图片,其中我传递了UIImage
。
但是我在哪里添加这个子视图?通常我会在awakeFromNib
中执行此操作,但这是以编程方式创建的。在init
方法中混淆视图层次结构是不好的做法。
我应该在哪里做?
答案 0 :(得分:2)
对于UIView
子类,init是您应添加子视图的地方。考虑一下你是否创建了一个UIButton
,你不希望它立即拥有titleLabel
吗?
答案 1 :(得分:0)
我会将它传递给你的init,因为听起来你的scrollview子类总是需要一个图像。
class ScrollViewCustom: UIScrollView {
init(frame: CGRect, image: UIImage) {
super.init(frame: frame)
var imageView = UIImageView(frame: CGRectMake(0, 0, 100, 200)) // Just an example size
imageView.image = image
}
}