设置多个TableView高度为swift

时间:2019-05-25 16:00:59

标签: swift

我在自己的样式中使用3个表视图。但是这个tableView的高度的高度不会改变我所做的。因此,高度始终是标准值。我不能提高身高。 TableViews正常工作,只有高度存在问题。以上工作的空间和宽度值,但高度始终是恒定的。我该怎么办?

class NewMainTableViewController: UITableViewController {
 var tableView1 : UITableView = UITableView()
    var tableView2 : UITableView = UITableView()
    var tableView3 : UITableView = UITableView()
 override func viewDidLoad() {
        super.viewDidLoad()

        tableView1.dataSource = self
        tableView1.delegate = self
        tableView1.register(DeviceTableViewCell2.self, forCellReuseIdentifier: cellIdNew)
        tableView1.backgroundColor = UIColor(white: 1, alpha: 0.09)

        tableView2.dataSource = self
        tableView2.delegate = self
        tableView2.register(DeviceTableViewCell2.self, forCellReuseIdentifier: cellId)
        tableView2.backgroundColor = UIColor(white: 1, alpha: 0.09)

        tableView3.dataSource = self
        tableView3.delegate = self
        tableView3.register(DeviceTableViewCell2.self, forCellReuseIdentifier: cellId)
        tableView3.backgroundColor = UIColor(white: 1, alpha: 0.09)
}

view.addSubview(tableView1)
        view.addSubview(tableView2)
        view.addSubview(tableView3)


        tableView1.snp.makeConstraints { (make) in
            make.top.equalTo(view).offset(130)
            make.height.equalTo(250)
            make.width.equalTo(view.frame.width)
        }

        tableView2.snp.makeConstraints { (make) in
            make.top.equalTo(tableView1).offset(100)
            make.height.equalTo(250)
            make.width.equalTo(view.frame.width)
        }
        tableView3.snp.makeConstraints { (make) in
            make.top.equalTo(tableView2).offset(100)
            make.height.equalTo(250)
            make.width.equalTo(view.frame.width)
        }

         override func numberOfSections(in tableView: UITableView) -> Int {
        // #warning Incomplete implementation, return the number of sections

        return 1
    }

    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

        if tableView == self.tableView1 {
            if !chipnumber2.text!.isEmpty {
               return  itemsNew.count


            }

        }

        if tableView == self.tableView2 {
           if !chipnumber.text!.isEmpty {
               return  items.count

            }

        }

        if tableView == self.tableView3 {
            if !chipnumber3.text!.isEmpty {
                return  itemsNew2.count

            }

        }

        return 0
    }

1 个答案:

答案 0 :(得分:1)

这对您有帮助吗?

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {


     if tableView == self.tableView1 {
        return CGFloat(#your desired size#)
     }
  if tableView == self.tableView2 {
        return CGFloat(#your desired size#)
     }
  if tableView == self.tableView3 {
        return CGFloat(#your desired size#)
     }
    return CGFloat(#your desired size#)

}