我有多个按钮,这些按钮是在用户想要创建新按钮时以编程方式创建的。可以编辑按钮并确定要按下哪个按钮,我使用UIButton
的{{1}}属性,如果标记值与存储的值匹配,则该属性通过字典传递。
我知道我也可以使用按钮名称确定按下哪个按钮,但是按钮名称可能重复。
还有其他方法吗?我只是想知道我是否使用tag
的{{1}}来做到这一点。创建每个按钮时,我都会创建UUID。可以以某种方式使用它吗?
答案 0 :(得分:0)
Paulw11给了我一个简单创建自定义UIbutton的想法。创建按钮时,我使用CustomBtn而不是UIButton。
创建按钮时,会将UUID分配给customBtn.UUID,然后将其保存到我的数据库中。然后,我使用过滤器将CustomBtn.UUIDtag与单击按钮时保存的内容进行比较。如果需要,这种绕过必须使用UIbutton.tag。
@IBAction func mainButton(sender: CustomBtn){
if let button = buttonPlist.arrayObjects.filter({$0.UUIDbtn == sender.UUIDtag}).first {
//ACTION to be implemented
}
}
class CustomBtn: UIButton {
var UUIDtag: UUID?
}