将 UIActivityIndicatorView 添加到 UIAlertView
Posted
技术标签:
【中文标题】将 UIActivityIndicatorView 添加到 UIAlertView【英文标题】:Adding UIActivityIndicatorView to UIAlertView 【发布时间】:2014-04-15 09:40:22 【问题描述】:我想在消息中添加一个活动指示器,即 uiAlert 消息,我基本上尝试了互联网上的所有内容,但对我没有任何效果,我将只拥有 uialertview,这是我的代码
UIAlertView *waitAlert = [[UIAlertView alloc] initWithTitle:@"Please Wait...." message:@"\n\n" delegate:self cancelButtonTitle:nil otherButtonTitles: nil];
UIActivityIndicatorView *progress= [[UIActivityIndicatorView alloc] initWithFrame: CGRectMake(125, 50, 30, 30)];
progress.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
progress.color = [UIColor blackColor];
[waitAlert addSubview: progress];
[progress startAnimating];
[waitAlert show];
这就是我最终拥有的
我错过了什么!?
【问题讨论】:
为什么不使用MBProgressHud...它是一个非常简洁的加载器库,而且使用起来非常简单... 使用ios7
,您不能将子视图添加到UIAlertView
。你必须自己做 AlertView,或者使用 CocoaControls/GitHub 上的一个。
Alert view is showing white rectangle in iOS7的可能重复
另见:***.com/questions/18729220/…
您可以在 UIAlertView 上添加子视图,但不会显示子视图。您可以检查它的子视图计数属性。
【参考方案1】:
在 iOS 7 中,您无法在 UIAlertView 上添加任何内容,这在 iOS 6.1 之前是可能的。所以 MBProgressHud 是最好和简单的解决方案
【讨论】:
您可以在 UIAlertView 上添加子视图,但不会显示子视图。您可以检查它的子视图计数属性。【参考方案2】:尝试使用UIAlertViewDelegate
方法添加您的UIActivityIndicator
:
- (void)didPresentAlertView:(UIAlertView *)alertView
UIActivityIndicatorView *progress = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
progress.frame = CGRectMake(125, 50, 30, 30);
[progress startAnimating];
[alertView addSubview:progress];
【讨论】:
以上是关于将 UIActivityIndicatorView 添加到 UIAlertView的主要内容,如果未能解决你的问题,请参考以下文章
将 UIActivityIndicatorView 添加到 UIAlertView
将 UIActivityIndicator 添加到模态视图 (ELCimagepicker)
如何将 UIActivityIndicator 添加到我的应用程序的启动画面?
将 UIActivityIndicator 添加到 UITableView