Ios UITableView未显示在ViewController中
我正在构建一个没有故事板的项目。一切正常,但我似乎不明白为什么不能以编程方式添加tableView。我尝试过在另一个空项目中添加tableView的相同代码,它工作正常,但在我的项目中tableView没有显示。我的视图层次结构如下所示 我有这样一个基类:Ios UITableView未显示在ViewController中,ios,swift,uitableview,Ios,Swift,Uitableview,我正在构建一个没有故事板的项目。一切正常,但我似乎不明白为什么不能以编程方式添加tableView。我尝试过在另一个空项目中添加tableView的相同代码,它工作正常,但在我的项目中tableView没有显示。我的视图层次结构如下所示 我有这样一个基类: class BaseController: UIViewController{ override func viewDidLoad() { setupViews() } func setupVie
class BaseController: UIViewController{
override func viewDidLoad() {
setupViews()
}
func setupViews(){
}
}
然后我从基类继承了firstViewController类:
在我的firstController中,我声明并初始化我的tableView:
var tableView:UITableView = {
let tbl = UITableView()
tbl.translatesAutoresizingMaskIntoConstraints = false
tbl.backgroundColor = .blue
return tbl
}()
然后我在firstViewController中覆盖setupView,如下所示:
override setupView() {
view.addSubview(tableView)
NSLayoutConstraint.activate([
tableView.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 0),
tableView.trailingAnchor.constraint(equalTo: view.leadingAnchor, constant: 0),
tableView.topAnchor.constraint(equalTo: view.topAnchor, constant: 0),
tableView.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: 0)
])
}
它应该显示空的tableView单元格,但不显示。我想这与基类和派生类有关,但我无法找出确切的问题。您需要为tableview正确设置尾部约束
tableView.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: 0)
您正在设置view.leading to tableview.Training,这使您的tableview在当前视图中不可见。您需要为tableview正确设置尾部约束
tableView.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: 0)
您正在设置view.leading to tableview.Training,这使您的tableview在当前视图中不可见。上面有一些错误,但我认为问题在于您的Training约束设置为leading锚点,因此它是零宽度视图。是的,这是个错误,您做得对,先生!上面有一些输入错误,但我认为问题在于你的尾随约束被设置为前导锚点,因此它是一个零宽度视图。是的,这是个错误,你说得对,先生!