swift Xib的可加载视图
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift Xib的可加载视图相关的知识,希望对你有一定的参考价值。
class LoadableView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
fromNib()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
fromNib()
}
}
extension UIView {
@discardableResult
func fromNib<T: UIView>(withName name: String?) -> T? {
guard let name = name, let view = Bundle.main.loadNibNamed(name, owner: self, options: nil)?[0] as? T else {
return nil
}
fitted(view: view)
return view
}
@discardableResult
func fromNib<T: UIView>() -> T? {
let name = String(describing: type(of: self))
return fromNib(withName: name)
}
func fitted(view: UIView) {
self.addSubview(view)
view.frame = bounds
view.autoresizingMask = [.flexibleWidth, .flexibleHeight];
}
}
class DashBoardView: LoadableView {}
以上是关于swift Xib的可加载视图的主要内容,如果未能解决你的问题,请参考以下文章