我有导航控制器,每个VC都有customTableView。在我的customTableView中,我将UI设置放入init()
方法中,如下所示:
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
separatorColor = UIColor.orange
}
但这不起作用。但是tableView的任何其他参数(例如backgroundColor,sectionIndexColor和其他参数)都可以正常工作。所以我只遇到分隔色问题。只是说,我所有的视图和单元格都有clearColor。
如果我将此代码放在
viewDidLoad
方法内的视图控制器(具有我的customTableView的出口)中,那么它将起作用。我想要实现的是,只有一个带有预定义参数的子类UITableView类可以在我的导航堆栈中的每个VC中使用。 最佳答案
至少可以调用两个初始化器:
1. required init?(coder aDecoder: NSCoder)
从Interface Builder(.xib或.storyboard)初始化视图时,将调用此初始化程序。要从IB初始化视图,请将某些视图或子视图的类设置为您正在使用的视图类。
2.普通init()
从代码初始化视图时将调用。此初始化程序可能有所不同,例如UITableViewCell的init(style: UITableViewCell.CellStyle, reuseIdentifier: String?)
等。
因此,请确保您是否使用了正确的初始化程序。至少您可以设置断点以查看是否调用了此init。
希望能帮助到你!
关于ios - 自定义UITableView中的分隔符颜色不变,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54593781/