gpt4 book ai didi

ios - 为什么按钮没有点击?

转载 作者:行者123 更新时间:2023-11-28 08:53:35 26 4
gpt4 key购买 nike

我在自定义单元格中有一个按钮,当我单击它时它没有执行任何操作。我试着故意输入错误的 addTarget 方法,这样它就会崩溃,所以我可以确认按钮正在被调用,但应用程序不会崩溃。为什么什么都没有发生?下面是自定义单元格和表格单元格的代码。 enter image description here

class ProfileMusicCell: UITableViewCell {

@IBOutlet weak var customtitle: UILabel!
@IBOutlet weak var customartist: UILabel!
@IBOutlet weak var playbutton: UIButton!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}

下面是表格 View 的代码

 func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {


let cell = table.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! ProfileMusicCell


cell.customtitle.text = ret[indexPath.row]
cell.customartist.text = ter[indexPath.row]
cell.customtitle.font = UIFont(name: "Lombok", size: 22)
cell.customtitle.textColor = UIColorFromRGB("4A90E2")
cell.customartist.font = UIFont(name: "Lombok", size: 16)
cell.customartist.textColor = UIColor.blackColor()
cell.playbutton.tag = indexPath.row
//I am purposely leaving out the : so the app can crash, but it is not crashing.
cell.playbutton.addTarget(self, action: "playmymusic", forControlEvents: .TouchUpInside)
}
func playmymusic(sender: UIButton!) {

let playButtonrow = sender.tag

print(ret[playButtonrow])
print(ter[playButtonrow])
}

最佳答案

我认为问题在于您在调用 playmymusic 时没有使用冒号。由于 sender 参数,所以需要冒号。

编译器正在尝试调用具有此名称的方法:

func playmymusic() 

而不是真正的:

func playmymusic(sender: UIButton!)

所以只需尝试在操作结束时添加冒号 (:),如下所示:

cell.playbutton.addTarget(self, action: "playmymusic:", forControlEvents: .TouchUpInside)

这是调用方法(发送消息)的 Objective-c 遗留方法,我知道这有点令人困惑。

关于ios - 为什么按钮没有点击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33657560/

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