Iphone 我可以向objective-c中的现有类添加ivar(或属性)吗?

Iphone 我可以向objective-c中的现有类添加ivar(或属性)吗?,iphone,objective-c,Iphone,Objective C,我想知道是否可以向UIButton类添加ivar?有点像类别,但不是用于方法,而是用于IVAR 我正在以编程方式创建和显示一个UIButton数组,然后使用–addTarget:action:forControlEvents:为一个修补事件链接到一个操作方法 现在,我的receiver方法需要知道所有按钮中的哪一个被按下了,但是使用idsender方法并不能切断它,因为唯一区别所有按钮的是它显示的图像,并且没有办法得到我需要的字符串。按钮都在不同的位置,所以我可以做一些数学运算,将位置数据转换为

我想知道是否可以向UIButton类添加ivar?有点像类别,但不是用于方法,而是用于IVAR

我正在以编程方式创建和显示一个UIButton数组,然后使用–addTarget:action:forControlEvents:为一个修补事件链接到一个操作方法

现在,我的receiver方法需要知道所有按钮中的哪一个被按下了,但是使用idsender方法并不能切断它,因为唯一区别所有按钮的是它显示的图像,并且没有办法得到我需要的字符串。按钮都在不同的位置,所以我可以做一些数学运算,将位置数据转换为id,但是如果我改变了线下按钮的位置,我也需要改变数学运算,我不喜欢这样

我是否可以将UIButton子类化,除了添加一个integeridCode属性外,不做任何更改?然后,当我创建按钮时,我设置idCode,当目标操作机制触发action方法时,我可以只执行sender.idCode。这样做吗

有没有更好的标准/优雅的方法来实施这种多目标行动?看看它是从哪里来的


注意:有没有一种快速的方法可以在Mac电脑上键入反勾号?

UIButton以及所有UIView子类已经有了一个用于该目的的整数属性:tag

UIButton以及所有UIView子类已经有了一个用于该目的的整数属性:tag

您可以这样做。但是这不是必需的-每个UIView和包含UIButton的子类都有您想要的标记属性。

您可以这样做。但这不是必需的-每个UIView和包含UIButton的子类都有您想要的tag属性。

谢谢您的回答!这正是我所需要的:谢谢你的回答!这正是我所需要的: