2010-09-09 88 views
1

我想知道是否有可能添加一個伊娃到UIButton類?有點像類別,但不適用於方法,但適用於ivars。我可以將ivar(或屬性)添加到objective-c中的現有類中嗎?

我以編程方式創建並顯示UIButton的數組,然後我使用–addTarget:action:forControlEvents:作爲一個觸發事件鏈接到單個動作方法。

現在,我的接收方法需要知道哪些按鈕被按下,但使用「(id)發送者」方法並不會削減它,因爲唯一區分所有按鈕的是它顯示的圖像,沒有辦法去(我需要一個字符串)。按鈕都在不同的地方,所以我可以做一些數學轉換位置數據到一個「ID」,但如果我改變按鈕的位置下線,我將需要改變數學,我不像那樣。

我可以只是子類UIButton和除了添加一個(NSUInteger)idCode屬性以外沒有什麼改變嗎?然後,當我創建按鈕時,我設置了idCode,並且當目標動作機制觸發動作方法時,我可以執行sender.idCode。這是做到這一點的方式嗎?

是否有一個更好的標準/優雅的方式來實現這種多目標行動看到它在哪裏來的行爲?

P.S .:是否有快速的方法在Mac上鍵入反向標記?

回答

7

你可以這樣來做。但是這不是必需的 - 每個UIView(和包括UIButton的子類)都有tag屬性,這正是您想要的。

+0

謝謝!只是我在找:) – lms 2010-09-09 16:46:47

2

的UIButton以及所有子類的UIView已經有一個整數屬性正是出於這個目的:tag

+0

感謝您的回答!這正是我需要:) – lms 2010-09-09 16:47:15

相關問題