Swift 3 - Xcode 8 - iOS10
我有一个带有UIView的xib文件。我想在我的ViewController中导入这个视图。
我的Player.xib
我的班级:
@IBDesignable
class EmbedPlayerViewV2: UIView {
@IBOutlet weak var subTitleLbl: UILabel!
var view: UIView!
override init(frame: CGRect) {
super.init(frame: frame)
loadViewFromNib()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
loadViewFromNib()
}
func loadViewFromNib() {
let bundle = Bundle(for: type(of: self))
let nib = UINib(nibName: "Player", bundle: bundle)
self.view = nib.instantiate(withOwner: self, options: nil).first as! UIView
self.addSubview(self.view)
}
override func layoutSubviews() {
subTitleLbl.text = "LOADED"
// ...
}
// ...
}
答案 0 :(得分:1)
我已经解决了我的问题。
func loadViewFromNib() {
let bundle = Bundle(for: type(of: self))
let nib = UINib(nibName: "Player", bundle: bundle)
self.view = nib.instantiate(withOwner: self, options: nil).first as! UIView
self.addSubview(view)
view.leadingAnchor.constraint(equalTo: self.leadingAnchor).isActive = true
view.trailingAnchor.constraint(equalTo: self.trailingAnchor).isActive = true
view.topAnchor.constraint(equalTo: self.topAnchor).isActive = true
view.bottomAnchor.constraint(equalTo: self.bottomAnchor).isActive = true
}
坦克Aaron