Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UITableView未显示在ViewController中_Ios_Swift_Uitableview - Fatal编程技术网

Ios UITableView未显示在ViewController中

Ios UITableView未显示在ViewController中,ios,swift,uitableview,Ios,Swift,Uitableview,我正在构建一个没有故事板的项目。一切正常,但我似乎不明白为什么不能以编程方式添加tableView。我尝试过在另一个空项目中添加tableView的相同代码,它工作正常,但在我的项目中tableView没有显示。我的视图层次结构如下所示 我有这样一个基类: class BaseController: UIViewController{ override func viewDidLoad() { setupViews() } func setupVie

我正在构建一个没有故事板的项目。一切正常,但我似乎不明白为什么不能以编程方式添加tableView。我尝试过在另一个空项目中添加tableView的相同代码,它工作正常,但在我的项目中tableView没有显示。我的视图层次结构如下所示

我有这样一个基类:

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锚点,因此它是零宽度视图。是的,这是个错误,您做得对,先生!上面有一些输入错误,但我认为问题在于你的尾随约束被设置为前导锚点,因此它是一个零宽度视图。是的,这是个错误,你说得对,先生!