gpt4 book ai didi

ios - 支持横向 iPhone X 的 TableView 标题

转载 作者:行者123 更新时间:2023-11-29 11:39:18 27 4
gpt4 key购买 nike

好吧,我正在尝试使 UITableView 的标题与 iPhone X Landscape 兼容,我希望标题的背景颜色应该扩展到边缘。我看过 WWDC 视频,他们说要在 backgroundView 上应用颜色,但在我的例子中它总是 nil。

这是我的代码,还有 link演示它。

extension ViewController:UITableViewDataSource{
func numberOfSections(in tableView: UITableView) -> Int {
return 5
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 5
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: String.init(describing: HVTableViewCell.self)) as! HVTableViewCell
return cell
}
}
extension ViewController:UITableViewDelegate{

func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 60.0
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 44.0
}

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
if let headerView = tableView.dequeueReusableHeaderFooterView(withIdentifier: String.init(describing: HVTableViewHeaderFooterView.self)) as? HVTableViewHeaderFooterView{
if let backgroundView = headerView.backgroundView{
backgroundView.backgroundColor = UIColor.red
}else{
print("Failed")
}
return headerView
}else{
return nil
}
}
}

class ViewController: UIViewController {

@IBOutlet weak var tblReference: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.tblReference.register(UINib.init(nibName: String.init(describing: HVTableViewCell.self), bundle: nil), forCellReuseIdentifier: String.init(describing: HVTableViewCell.self))
self.tblReference.register(UINib.init(nibName: String.init(describing: HVTableViewHeaderFooterView.self), bundle: nil), forHeaderFooterViewReuseIdentifier: String.init(describing: HVTableViewHeaderFooterView.self))

self.tblReference.delegate = self
self.tblReference.dataSource = self

self.tblReference.reloadData()
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}


}

这是问题的截图。 Yellow Header Should stretch to edges.

提前致谢。

最佳答案

我找到了另一种方法。

我们可以设置HeaderView图层的背景颜色。

// HeaderView Class
self.layer.backgroundColor = UIColor.red.cgColor

这里是 the link工作代码。

希望对其他人也有帮助。

关于ios - 支持横向 iPhone X 的 TableView 标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47494279/

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