为什么总是初始化19个单元格?

问题描述 投票:0回答:1

我正在学习Swift中的TableView。我的老师给我一个问题:“您有20个单元格,但屏幕上显示3个单元格。已经初始化了多少个单元格,为什么?

这是我的代码。我尝试使用20多个单元格,但始终会初始化19个单元格。有人可以向我解释原因吗?非常感谢]]

override func viewDidLoad() {
    super.viewDidLoad()
    myTable.register(UINib(nibName: "ContactCell", bundle: nil), forCellReuseIdentifier: "ContactCell")
    myTable.dataSource = self
    myTable.delegate = self
}
func numberOfSections(in tableView: UITableView) -> Int {
    return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 20

}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "ContactCell", for: indexPath) as! ContactCell
    cell.textLabel?.text = "Superhero"

    return cell
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    return myTable.frame.size.height / 3.0
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    print(indexPath.section)
    print(indexPath.row)
}

此代码在另一个文件上

class ContactCell: UITableViewCell {

    @IBOutlet weak var cellShow: UIView!
    override func awakeFromNib() {
        super.awakeFromNib()
        print("awakeFromNib")
    }

    override func setSelected(_ selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)

    }  
}

我正在学习Swift中的TableView。我的老师给我一个问题:“您有20个单元格,但屏幕上显示了3个单元格。初始化了多少个单元格,为什么?这是我的代码。我尝试了...

ios swift uitableview cell
1个回答
0
投票
已初始化单元格的数量=根据每个单元格的高度在屏幕上适合的范围
© www.soinside.com 2019 - 2024. All rights reserved.