Jui*_*uit 3 uitableview xib uiview nscoder ios
我CustomTableViewClass在厦门国际银行,将它添加到UITableView喜欢
class RestaurantsTableView: UITableView {
override func awakeFromNib() {
self.register(UINib(nibName: "RestaurantTableViewCell", bundle: nil), forCellReuseIdentifier: "restaurantCell")
}
}
Run Code Online (Sandbox Code Playgroud)
和一切工作正常,现在我想用这个CustomTableViewClass作为UIView在其他一些UIViewController,但我不明白如何正确地重写它的init(coder aCoder: NSCoder)功能,因为我并不需要一个UITableView情况下,当我实现它就像我的其他自定义XIB意见做它崩溃了nil
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
let _ = Bundle.main.loadNibNamed("RestaurantTableViewCell", owner: self, options: nil)?[0] as! UIView
}
Run Code Online (Sandbox Code Playgroud)
有一种方法可以使用哪种类型的contentView属性.因此,只需获取之前从nib获取的RestaurantTableViewCell然后使用它来获取它.UITableViewCellUIViewcontentViewUIView
let cell = Bundle.main.loadNibNamed("RestaurantTableViewCell", owner: self, options: nil)?[0] as! RestaurantTableViewCell
let yourView = cell.contentView
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2527 次 |
| 最近记录: |