没有按钮的UIAlertView以及如何关闭它

时间:2012-11-14 13:06:13

标签: iphone xcode uialertview

我在警报视图中有活动指示器,直到我的应用获得服务器响应才会使用。应用程序将数据发送到服务器,警报视图显示,当服务器向我发送响应时如何关闭它。这是来自我的警报的代码

        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Canceling reservation" message:@"please wait" delegate:self cancelButtonTitle:nil otherButtonTitles: nil];
        [alert show];

        UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];

        // Adjust the indicator to place at the bottom of the dialog window.
        indicator.center = CGPointMake(alert.bounds.size.width / 2, alert.bounds.size.height-50);
        [indicator startAnimating];
        [alert addSubview:indicator];

3 个答案:

答案 0 :(得分:7)

[alert dismissWithClickedButtonIndex:0 animated:YES];

答案 1 :(得分:1)

您可以使用MBProgressHUD代替标准的UIAlertView。

答案 2 :(得分:0)

您可以使用dismissWithClickedButtonIndex:委托方法取消alertView。

[alert dismissWithClickedButtonIndex:0 animated:YES];

确保在alert上声明@Interface

  

<强> dismissWithClickedButtonIndex:动画:

     

取消接收器,可选择使用动画。

     

- (void)dismissWithClickedButtonIndex:(NSInteger)buttonIndex animated:(BOOL)animated Parameters

     

<强> buttonIndex

The index of the button that was clicked just before invoking this method. The button indices start at 0.
     

<强>动画

YES if the receiver should be removed by animating it first; otherwise, NO if it should be removed immediately with no animation.
     

讨论

     

在iOS 4.0中,您可能希望在应用程序时调用此方法   移到后台。警报视图不会自动解除   当应用程序移动到后台时。这种行为不同   从以前版本的操作系统开始   应用程序终止时自动取消。驳回   警报视图为您的应用程序提供了保存更改的机会   中止操作并执行任何必要的清理以防万一   申请后来终止。可用性

Available in iOS 2.0 and later.
     

在UIAlertView.h中声明

请参阅UIAlertView