如何在 UIAlertview iOS 7 上创建 UIProgressViewStyleBar?

Posted

技术标签:

【中文标题】如何在 UIAlertview iOS 7 上创建 UIProgressViewStyleBar?【英文标题】:How to create UIProgressViewStyleBar on UIAlertview iOS 7? 【发布时间】:2015-08-10 10:43:56 【问题描述】:

我正在尝试使用JSON 在我的应用上加载状态信息来创建UIProgressViewStyleBar on UIAlertview。现在我的问题是我看不到UIProgressViewStylebar on ios 7。请帮帮我!

我的来源:

UIAlertView *alertss = [[UIAlertView alloc] initWithTitle:@"Please Wait..Downloading reports..."    message:nil delegate:self cancelButtonTitle:nil otherButtonTitles: nil] ;
alertss.frame=CGRectMake(50, 50, 280, 40);
UIProgressView *prgView = [[UIProgressView alloc]initWithProgressViewStyle:UIProgressViewStyleBar];
prgView.frame = CGRectMake(5, 0, 70, 20);
prgView.hidden=NO;
[alertss addSubview:prgView];
[alertss show];
UILabel *statusLabel = [[UILabel alloc] init];
statusLabel.backgroundColor = [UIColor clearColor];
statusLabel.textColor = [UIColor whiteColor];
statusLabel.font = [UIFont fontWithName:@"AmericanTypewriter-Condensed" size:18.0];
statusLabel.frame = CGRectMake(120, 80, 80, 20);
[alertss addSubview:statusLabel];
[alertss show];

【问题讨论】:

【参考方案1】:

是的,那是正确的代码加上这一行代码

 [progressView setProgress:0.75f animated:YES];

在显示您的警报之前。更改进度值取决于您的需要。或根据需要对其进行动画处理。

【讨论】:

谢谢!我在问如何显示百分比或一些状态信息,同时数据红线应该根据 JSON 加载移动!@deepakraj 你需要在进度视图中添加动画,这样红线就会自动移动到你的提要中 如果你不介意给一些样品。我是 ios 新手!@deepak 你会给你不用担心。但我的问题是你为什么不试试这个名为 MBProgressHUD 的进度 hud 库。 我不知道如何整合它。看起来上面对我来说很容易【参考方案2】:
   UIAlertView *av = [[UIAlertView alloc] initWithTitle:@"Running"     message:@"" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:nil];
   UIProgressView* progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleBar];
progressView.frame = CGRectMake(0, 0, 200, 15);
progressView.bounds = CGRectMake(0, 0, 200, 15);
progressView.backgroundColor = [UIColor blackColor];

[progressView setUserInteractionEnabled:NO];
[progressView setTrackTintColor:[UIColor blueColor]];
[progressView setProgressTintColor:[UIColor redColor]];
 [progressView setProgress:0.75f animated:YES];
// you have to set the accessoryView to alertview
[av setValue:progressView forKey:@"accessoryView"];

[av show];

【讨论】:

试试上面的代码,希望对你有帮助。如果你将任何子视图添加到 alertview,你必须将附件视图添加到 alertview 谢谢。但它的显示完成了一个。我需要用一些 JSON 状态信息显示实时加载百分比。请发布一些示例代码@kamalkumar 我已经更新了代码。你使用afnetworking得到json响应吗 检查这个你有来自这个***.com/questions/19145093/…的答案 如何在警报视图中添加 Progresshud【参考方案3】:

看到添加 MBprogressHUD 就是这么简单。首先从GitHub 下载 MBProgressHUD Lib 并在您的项目中导入为#import "MBProgressHUD.h"

然后简单的一行显示progressHUD如下:

显示:

[MBProgressHUD showHUDAddedTo:self.view animated:YES]; 

隐藏:

[MBProgressHUD hideHUDForView:self.view animated:YES];

对于您的问题,请使用以下代码:

  av = [[UIAlertView alloc] initWithTitle:@"Running" message:@"" delegate:self cancelButtonTitle:@"Done" otherButtonTitles:nil];


    [MBProgressHUD showHUDAddedTo:self.view animated:YES];
        [av show];
    [MBProgressHUD hideHUDForView:self.view animated:YES];

这里我使用了循环加载器。如果您想自定义它,您可以根据需要以多种形式使用此加载器。

【讨论】:

看到它对我没有任何帮助。我说我是ios新手!

以上是关于如何在 UIAlertview iOS 7 上创建 UIProgressViewStyleBar?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 7 中将 UITableView 添加到 UIAlertView

如何在 iOS 8 上显示没有按钮的 UIAlertView?

如何在 iOS 7 中以编程方式正确关闭 UIAlertView?

iOS 7 中的 UIAlertView 样式登录和密码输入

在 iOS 7.1+ 中快速使用 UIAlertView

UIAlertView 按钮(子视图)未在 iOS 7 中显示