gpt4 book ai didi

ios - 如何在 Swift 中将标签和 UIButton 添加到 tableViewSection header ?

转载 作者:搜寻专家 更新时间:2023-11-01 07:08:32 24 4
gpt4 key购买 nike

我编写了以下代码,用于在节标题 View 的中心添加文本标签。

后半部分代码是添加一个UIButton,它的宽度为100,并与section header的右上角对齐。

结果是:只有添加的标签显示在中心。该按钮根本不会显示在标题上!

能否请您帮忙指出我在实现过程中哪里出了问题?谢谢。

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = UIView()

// code for adding centered title
headerView.backgroundColor = UIColor.gray
let headerLabel = UILabel(frame: CGRect(x: 0, y: 0, width:
tableView.bounds.size.width, height: 28))
headerLabel.textColor = UIColor.black
headerLabel.text = titlesList[section]
headerLabel.textAlignment = .center
headerView.addSubview(headerLabel)

// code for adding button to right corner of section header
let showHideButton: UIButton = UIButton(frame: CGRect(x:headerView.frame.size.width - 100, y:0, width:100, height:28))
showHideButton.setTitle("Show Closed", for: .normal)
showHideButton.backgroundColor = UIColor.blue
showHideButton.addTarget(self, action: #selector(btnShowHideTapped), for: .touchUpInside)

headerView.addSubview(showHideButton)

return headerView
}

最佳答案

你的问题是这一行:

let headerView = UIView()

您没有指定任何框架尺寸,因此下面的行将是您的 showHideButton 框架的可识别尺寸:

let showHideButton: UIButton = UIButton(frame: CGRect(x:headerView.frame.size.width - 100, y:0, width:100, height:28))

当你声明你的 headerView 时使用这一行:

let headerView = UIView(frame: CGRect(x: 0, y: 0, width: tableView.frame.width, height: 100)) 

这将显示以下内容: enter image description here

关于ios - 如何在 Swift 中将标签和 UIButton 添加到 tableViewSection header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46515882/

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