2010-09-09 3 views
2

Есть ли способ добавить .tag в кнопку UIAlertView? Причина в том, что я добавляю несколько динамических кнопок для предупреждения, которое иногда будет в тревоге, а иногда и нет. Я решил, что лучший способ - добавить тег. Есть ли лучший способ для этого?Маркировка кнопки UIAlertView

Параметры, которые будут ВСЕГДА быть в сообщении, - это Email, Save. И 2 необязательных варианта - это «Это и Facebook».

Спасибо за любую помощь заранее!

ответ

2

Существует один метод buttonTitleAtIndex для UIAlertView. Используйте это, чтобы найти кнопку, нажатую пользователем.

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    NSString *buttonString = [alertView buttonTitleAtIndex:buttonIndex]; 
    if([buttonString isEqualToString:@"Facebook"]){ 
     // your code here 
    } else if([buttonString isEqualToString:@"twitter"]){ 
     // your code here 
    } 
} 
+0

Это прекрасно! Я шел мимо buttonIndex, который не является надежным. Благодарю. –

1

Вы также можете использовать тег proprerty:

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Info" 
               message:@"Info text" 
               delegate:self 
             cancelButtonTitle:@"Ok" 
             otherButtonTitles:nil, nil]; 
[alert setTag:0]; 

Затем в делегат:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex { 
    switch (alertView.tag) { 
     case 1: { 
     ... 
     break; 
     } 
     ... 
    default: 
     break; 
} 
Смежные вопросы