OHAlertView 3.0.1

OHAlertView 3.0.1

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布上次发布2015年12月

Olivier Halligon 维护。



  • 作者:
  • Olivier Halligon

关于此类

此类使使用 UIAlertView 与 blocks 更加容易。

这允许你直接提供执行代码(作为 block),并在按钮点击时返回,而不是声明一个代理并实现相应的方法。

此外,这还具有一个巨大优势:在同一个对象中使用多个 UIAlertViews 时,可以显著简化代码,特别是在共享相同代理的情况下,编写简洁的代码是不容易的。

注意:您可能还对 OHActionSheet 感兴趣。

使用示例

[OHAlertView showAlertWithTitle:@"Alert Demo"
                        message:@"You like this sample?"
                   cancelButton:@"No"
                       okButton:@"Yes"
                  buttonHandler:^(OHAlertView* alert, NSInteger buttonIndex)
 {
     NSLog(@"button tapped: %d",buttonIndex);

     if (buttonIndex == alert.cancelButtonIndex) {
         NSLog(@"No");
     } else {
         NSLog(@"Yes");
     }
 }];

带超时的警报

您还可以使用此类生成一个将在给定时间后消失的 AlertView。 (您甚至可以在警报中添加动态文本,以显示实时倒计时)

[[[OHAlertView alloc] initWithTitle:@"Alert Demo"
                            message:@"This is a demo message"
                       cancelButton:nil
                       otherButtons:[NSArray arrayWithObject:@"OK"]
                      buttonHandler:^(OHAlertView* alert, NSInteger buttonIndex)
  {
      if (buttonIndex == -1)
      {
          self.status.text = @"Demo alert dismissed automatically after timeout!";
      }
      else
      {
          self.status.text = @"Demo alert dismissed by user!";
      }
  }] showWithTimeout:12 timeoutButtonIndex:-1 timeoutMessageFormat:@"(Alert dismissed in %lus)"];

兼容性说明

  • 此类使用 blocks,这是 iOS 4.0 中引入的一项功能。
  • 此类使用 ARC。

许可证

此代码采用 MIT 许可证。