gpt4 book ai didi

ios - 如何将目标添加到 TableView 标题部分中的按钮

转载 作者:行者123 更新时间:2023-11-28 18:14:55 24 4
gpt4 key购买 nike

所以我有一个带有 2 个标题的 TableView ,每个标题有一个按钮。我想知道标题的哪个按钮被点击了,我该如何实现。

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let view = UIView()
view.backgroundColor = UIColor.dashboardScreenHeader

let titleLabel = UILabel()
titleLabel.frame = CGRect(x: 11, y: 12, width:170, height: 18)
titleLabel.text = headerSection[section]
titleLabel.font = titleLabel.font.withSize(16)

let button = UIButton(type: .system)
button.setTitle("See All", for: .normal)
button.setTitleColor(UIColor.customBlueColor, for: .normal)
button.titleLabel?.font = UIFont.boldSystemFont(ofSize: 14)
button.frame = CGRect(x: 303, y: 14, width: 62, height: 12)
button.addTarget(self, action: #selector(showDetail), for: .touchUpInside)

view.addSubview(titleLabel)
view.addSubview(button)

return view
}

@objc func showDetail(){
print("button tapped")
}

我尝试通过此显示详细信息按钮中的部分,但出现错误

我想在 showDetail 函数中实现这个

点击第 1 部分中的“查看全部”按钮 -> do x

点击第 2 部分的“查看全部”按钮 -> 执行 y

最佳答案

您需要为在 viewForHeaderInSection 中创建的每个按钮分配标签。

button.tag = section
button.addTarget(self, action: #selector(showDetail:), for: .touchUpInside)

然后

 @objc func showDetail(_ button:UIButton){
switch button.tag{
case 0:
// code for section 1
// Do your X
case 1:
// code for section 2
// Do your Y
default:
//default code
}
}

希望对您有所帮助!

关于ios - 如何将目标添加到 TableView 标题部分中的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53928847/

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