2012-01-23 24 views
1

我嘗試單擊按鈕,從操作表中選擇,然後將選定的索引設置爲按鈕文本標籤的文本。我的按鈕在下面。但它不會在按鈕文本中顯示選定的索引。我該如何解決這個問題?actionSheet clickedButtonAtIndex在目標c中不起作用嗎?

- (IBAction)cinsiyetBtnClick:(id)sender { 
    popupQuery1 = [[UIActionSheet alloc] initWithTitle:@"Cinsiyetiniz" 
               delegate:self 
            cancelButtonTitle:NO 
           destructiveButtonTitle:NO 
            otherButtonTitles:@"Bay", @"Bayan",nil]; 
    popupQuery1.tag = 1; 
    // popupQuery1.actionSheetStyle = UIActionSheetStyleDefault; 
    [popupQuery1 showInView:[UIApplication sharedApplication].keyWindow]; 
    [popupQuery1 release]; 
} 

- (IBAction)medeniDurumBtnClick:(id)sender { 
    popupQuery1 = [[UIActionSheet alloc] initWithTitle:@"Medeni Durumunuz" 
               delegate:self 
            cancelButtonTitle:NO 
           destructiveButtonTitle:NO 
            otherButtonTitles:@"Evli", @"Bekar",@"Dul",@"Boşanmış",nil]; 
    popupQuery1.tag = 2; 
    // popupQuery1.actionSheetStyle = UIActionSheetStyleDefault; 
    [popupQuery1 showInView:[UIApplication sharedApplication].keyWindow]; 
    [popupQuery1 release]; 
} 

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex { 
    if(actionSheet.tag==1){ 
     if (buttonIndex == 0) { 
      self.cinsiyetBtn.titleLabel.text = @"Bay"; 
     } else if (buttonIndex == 1) { 
      self.cinsiyetBtn.titleLabel.text = @"Bayan"; 
     } 
    } 
    else if (actionSheet.tag == 2){ 
     if (buttonIndex == 0) { 
      self.medeniDurumBtn.titleLabel.text = @"Evli"; 
     } else if (buttonIndex == 1) { 
      self.medeniDurumBtn.titleLabel.text = @"Bekar"; 
     } else if (buttonIndex == 2) { 
      self.medeniDurumBtn.titleLabel.text = @"Dul"; 
     } else if (buttonIndex == 3) { 
      self.medeniDurumBtn.titleLabel.text = @"Boşanmış"; 
     } 
    } 
} 
+0

你設置UIApplicationDelegate在.h文件中:

所以,現在你應該像這樣的東西替換所有self.cinsiyetBtn.titleLabel.text = @"Bay";? –

+0

那麼究竟是什麼問題....沒有按鈕標題正在更新? – Shubhank

回答

1

有幾種狀態中,按鈕可以是:UIControlStateNormalUIControlStateHighlightedUIControlStateSelectedUIControlStateDisabled

在大多數情況下,當你想更新按鈕的標題應爲正常狀態設置新標題:

[button setTitle:@"New Title" forState:UIControlStateNormal]; 

有時候你需要設置標題爲所有狀態。

[self.cinsiyetBtn setTitle:@"Bay" forState:UIControlStateNormal]; 
相關問題