2010-12-03 17 views
11

UIAlertViewDelegate'i uygulayan denetleyicim var. Uygulamada şu var:UIAlertViewDelegate ve daha fazla Alert penceresi

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 

yöntemi. UIAlertView'i oluşturduğumda 'delege' için 'kendime' koydum ve iyi çalışıyor. Ama sorun şu ki, şimdi bir tane daha uyarı görüyorum ve her biri için farklı davranışlar istiyorum. Peki hangi alertViewView mesaj göndermek için?

cevap

12

UIAlertView UIView subsclass ve böylece aralarında farklılaştırmak için kullanabileceğiniz etiket özelliği vardır:

UIAlertView *alert1 = ... //Create alert 
alert1.tag = kActionTag1; 
//show alert 

... 

UIAlertView *alert2 = ... //Create alert 
alert2.tag = kActionTag2; 
//show alert 

Ve sonra temsilci yönteminde:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{ 
    if (alertView.tag == kActionTag1){ 
      // Perform 1st action 
    } 
    if (alertView.tag == kActionTag1){ 
      // Perform 2nd action 
    } 
} 
+0

Teşekkürler, bu çok yardımcı olur :) – 1110

0

Her belirli uyarı görünümünün işaretçisi, temsilci yönteminin alertView parametresine gönderilir. İşaretçiyi (örneğin örnek değişkenler aracılığıyla) izlemeniz yeterlidir, böylece hangisinin hangisi olduğunu ve buna göre hareket ettiğini bilirsiniz.

0

UIAlertView gazı bir etiket özelliği. Bunu oluştururken ayarlayın ve etiketi temsilci için kontrol edebilirsiniz.

İlgili konular