设置多个TableView高度swift

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (4)

我用我的风格使用3 tableview。但是这个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
    }
提问于
用户回答回答于

愿这有用:

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#)

}

扫码关注云+社区

领取腾讯云代金券