2010-11-12 79 views
0

我有一個名爲start的按鈕,我想知道它在調用它的名字的方法,我真的不知道該怎麼做。這是按鈕調用的方法。如何在操作中獲取按鈕的名稱?

-(IBAction) startMotion: (id)sender { 
    UIButton * buttonName = (UIButton *) sender; 
    NSLog(@"Button Name: %@", buttonName.currentTitle); 
} 

的NSLog的打印

按鈕名稱:(空)

+1

你是如何設置按鈕的標題? – 2010-11-12 17:33:19

+0

我在接口生成器中設置它。 – rd42 2010-11-12 19:44:27

+0

我也試過buttonName.titleLabel.text和buttonName.titleLabel出了一個P爲其中一個按鈕?! – rd42 2010-11-12 19:44:53

回答

1

我在Interface Builder中使用了錯誤的屬性。我在Interface Builder中使用了按鈕的名稱屬性,而不是按鈕設置中的title屬性。

4

您可以通過

[b setTitle:@"Start" forState:UIControlStateNormal]; 

設置按鈕的標題,並拿到冠軍( currentTitle是隻讀的,可能爲零):

[b currentTitle]; 

順便說一句,如果你只是想區分多個按鈕,你可以設置按鈕的標籤屬性(一個整數值)。

此外,請檢查您的viewController類中是否已將按鈕指定爲IBOutlet,並將它作爲Interface Builder中的插座正確連接?

+0

真棒謝謝你 – death7eater 2013-04-04 21:12:44

2

我寧願設置某個標籤並比較標籤值,而不是閱讀按鈕的標題,因爲您有可能將本地化您的應用程序的按鈕標題可能會有所不同。