UIAlertView按钮标记

时间:2010-09-09 14:36:50

标签: iphone uialertview

有没有办法可以在UIAlertView按钮上添加.tag?原因是,我在警报中添加了一些动态按钮,有时会处于警报状态,有时则不会。我认为最好的方法是添加标签。有没有更好的方法呢?

始终在警报中的选项是电子邮件,保存。 2个可选选项是Tweet This和Facebook。

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:2)

UIAlertView有一个方法buttonTitleAtIndex。用它来查找用户点击的按钮。

- (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
    }
}

答案 1 :(得分:1)

您还可以使用标记属性:

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;
}