iOS - 如何使用NIB中的特定框架初始化自定义UIView

时间:2018-02-26 16:47:25

标签: ios swift uiview xib init

我想知道用特定框架初始化自定义UIView的最简洁方法是什么。

UIView是根据XIB文件设计的。

以下是我的实施

class CustomView : UIView {

    @IBOutlet var outletLabel: UILabel!

    public required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        setupView()
    }

    public override init(frame: CGRect) {
        super.init(frame: frame)
        setupView()
    }

    private func setupView() {

        // Set text for labels
    }
}

以下是我想在ViewController中初始化它的方法:

let screenSize: CGRect = UIScreen.main.bounds
let screenWidth = screenSize.width
let frame = CGRect(x: 0, y: 0, width: screenWidth - 50, height: 70)

let customView = CustomView.init(frame: frame)

但它没有用,我有一个白色的UIView没有任何插座。

如果我这样做:

// Extension to UIView to load Nib
let customView : CustomView = UIView.fromNib()

我可以在view文件中看到我的XIB,其宽度/高度在Interface Builder中使用。

我希望从view文件中加载XIB但是具有特定框架?

我是否遗漏了有关初始化的内容?

0 个答案:

没有答案