在代码中创建UIScrollView子类,我在哪里添加子视图?

时间:2014-11-15 19:11:41

标签: ios objective-c cocoa-touch uiview uiscrollview

每次创建UIScrollView子类时,我都会向其添加UIImageView。我从滚动视图的UIImageView方法中获取了init的图片,其中我传递了UIImage

但是我在哪里添加这个子视图?通常我会在awakeFromNib中执行此操作,但这是以编程方式创建的。在init方法中混淆视图层次结构是不好的做法。

我应该在哪里做?

2 个答案:

答案 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
    }
}