我有一個鋼琴鍵盤。每個按鈕(鋼琴鍵)在IB中分配有不同的標籤。該標籤用於識別每個按鈕,以便我可以播放屬於該鋼琴鍵的聲音。我每個琴鍵連接到以下IBAction爲:發件人標籤始終返回1
-(IBAction)playNoteFromKeyTouch:(id) sender{
UIButton *pressedButton = sender;
int tag = [pressedButton tag];
}
由[pressedButton標籤]返回的值始終爲1。我已經嘗試了不同的方式來得到這個,例如:
-(IBAction)playNoteFromKeyTouch:(id) sender{
NSInteger tag = ((UIView*)sender).tag;
}
,簡單地:
-(IBAction)playNoteFromKeyTouch:(id) sender{
int tag = [sender tag];
}
不管我做什麼,甚至當我指定的標籤編程到每個琴鍵,我總是獲取標記== 1,我能怎麼會丟失?
Add:NSLog(@「Sender is%@」,sender);在playNoteFromKeyTouch裏面:確保你獲得不同的密鑰。 – Rayfleck 2012-02-04 17:00:29
是的,我有不同的鑰匙 – 2012-02-04 17:04:54
Wierd。你可以粘貼你的IB面板的屏幕截圖來顯示你設置標籤的位置嗎? – Rayfleck 2012-02-04 17:16:03