2012-11-25 84 views
0

我的程序中有很多自定義按鈕,我需要使用方法來獲取他們的名字。我已經想出瞭如何通過他們的標籤獲得他們的名字,但我似乎無法按照字符串格式來命名。獲取按鈕名稱字符串格式

我使用的是什麼樣的繼承人:

-(void)pickRandomToHide { 
    for (int check = 1; check <=5; check++) 
    { 
     int eventNumber = 1 + arc4random() % 43; 
     UIButton *pick; 
     pick = (UIButton *)[_mapImageView viewWithTag:eventNumber]; 
     [pick setHidden:YES]; 
     NSString *buttonName; 
     buttonName = [pick currentTitle]; 
     NSLog(@"%@",buttonName); 
    } 
} 

的NSLog的只是給 '空' 的五倍。但5個按鈕正在消失,所以開始工作。

回答

0

你沒有看到任何標題的原因是因爲按鈕被隱藏和禁用,而標題可能只在按鈕的控制狀態爲「正常」(啓用且可見)時纔會出現。 Here's more information from Apple on the UIButton control states

試着這樣做:

-(void)pickRandomToHide { 
    for (int check = 1; check <=5; check++) 
    { 
     int eventNumber = 1 + arc4random() % 43; 
     UIButton *pick = (UIButton *)[_mapImageView viewWithTag:eventNumber]; 
     if(pick) 
     { 
      [pick setHidden:YES]; 
      NSString *buttonName = [pick titleForState: UIControlStateNormal]; 
      NSLog(@"%@",buttonName); 
     } else { 
      NSLog(@"hmmm, no button with a tag corresponding to event number %d", eventNumber); 
     } 
    } 
} 
+0

我加入了[挑setHidden:YES]只是爲了顯示第一部分的作品,它不是實際的程序,所以這不是問題。我試過你的代碼,無論如何它也不起作用。 – PappaSmalls