gpt4 book ai didi

ios - UITableViewDelegate 是否影响 tableViews 行高?

转载 作者:行者123 更新时间:2023-11-30 11:24:58 24 4
gpt4 key购买 nike

我将在 tableView 上设置 UITableViewDelegate,但如果这样做,行高会发生变化:第一张图是没有代表团;第二个带有委托(delegate)(顺便说一句。缺少服务 1 是正确的)

without delegation

with delegation

行高代码:

internal func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
if cellSubTitle.count == 0 {
return 70
} else {
if cellSubTitle[indexPath.row] == "" {
return 70
} else {
return 88
}
}
}

对于tableView:

private lazy var tableView: StandardTV = {
let tv = StandardTV()

tv.translatesAutoresizingMaskIntoConstraints = false
tv.headerType = .none
tv.cellTitle = ["Service 2", "Service 3", "Service 4", "Service 5", "Service 6", "Service 7"]
// tv.delegate = self

return tv
}()

我希望有人能帮助我:)

编辑

rowForHeight 代码是 TableView 类(“StandardTV”)的一部分。这个类有自己的委托(delegate)。

 class StandardTV: UITableView, UITableViewDelegate, UITableViewDataSource {
override init(frame: CGRect, style: UITableViewStyle) {
super.init(frame: CGRect.zero, style: .grouped)

delegate = self
dataSource = self

backgroundColor = .white
translatesAutoresizingMaskIntoConstraints = false
separatorStyle = .none

showsVerticalScrollIndicator = false

self.register(StandardTVCell.self, forCellReuseIdentifier: reuseIdentifier)
}
....
}

第二个代码片段来 self 插入 tableView 的 View Controller 。

最佳答案

感谢 @maddy 和 @Swift Rabbit 的提示,我得到了答案:是的,当然会影响委托(delegate)的行高:)我已经为 tableView 实现了两次委托(delegate)方法。一个在我的“StandardTV”类中,第二个在 viewController 上。因此我认为我的“StandardTV”类的第一个代表将被忽略,因此行高。

顺便说一句:我在不同的 viewController 中使用这些“StandardTV”类,并希望保持相同的行高。

关于ios - UITableViewDelegate 是否影响 tableViews 行高?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50841609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com