gpt4 book ai didi

ios - 重复使用 TableView 中的单元格导致按钮问题

转载 作者:行者123 更新时间:2023-11-29 01:45:35 26 4
gpt4 key购买 nike

我的表格 View 单元格上有一个按钮。我将 numberOfRowsInSection 返回为 return arrayname.count。因此我得到的按钮数量与数组数量相同。

我使用该按钮触发通知,当用户再次按下该按钮时,通知将被取消。这是一个基于位置的通知。

如果 TableView 中只有一个按钮,则效果很好。但是当我返回 2 个或更多单元格时,我似乎无法弄清楚如何区分按钮事件而不影响另一个。示例 - 表格中有两个单元格和两个按钮。一个用于位置“a”,一个用于位置“b”。我希望在进入区域“a”时收到通知,因此我按下与位置“a”对应的按钮。但由于未按下按钮“b”,因此不会安排通知。仅当所有按钮都处于相同状态时才可以正常工作。但是,我该如何解决这个问题?

`button.addTarget(self, action: "pressed:", forControlEvents: .TouchUpInside) 
button.setImage(UIImage(named: "a.png")!, forState: .Normal)
button.tag = 999
func pressed(sender: UIButton!) {
if sender.tag == 999
{ sender.setImage(UIImage(named: "b.png")!, forState: .Normal)
sender.tag = 0 } else
{ sender.setImage(UIImage(named: "a.png")!, forState: .Normal) sender.tag = 999 }
}`

我已经使用此代码在按下按钮时切换图像。

最佳答案

我看不出您遇到的问题与电池重用之间有任何联系。

检测按下哪个按钮的最简单方法是添加行:

button.tag = indexPath.row

到您的cellForRowAtIndexPath 函数。然后在由您的按钮触发的功能中添加:

func buttonPressed(sender:UIButton) {
let selectedItem = arrayname[sender.tag] // this gives you selected item from array
// or you can do
if sender.tag == 0 {
// button in first cell pressed
}
}

关于ios - 重复使用 TableView 中的单元格导致按钮问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31965581/

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