1

我通过将进度视图和标签作为子视图添加到警报视图来显示进度视图和标签,这在 IOS6 上运行良好,我在 IOS7 上测试了相同的东西,并且进度视图和标签没有显示。下面是我的代码。需要进行哪些更改才能使其在 ios7 上运行?

 alert = [[UIAlertView alloc] initWithTitle:@"Please Wait..Downloading reports..."    message:nil delegate:self cancelButtonTitle:nil otherButtonTitles: nil] ;
alert.frame=CGRectMake(50, 50, 280, 40);
prgView = [[UIProgressView alloc]initWithProgressViewStyle:UIProgressViewStyleBar];
prgView.frame = CGRectMake(10, 60, 265, 20);
prgView.hidden=NO;
[alert addSubview:prgView];
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);
[alert addSubview:statusLabel];
[alert show];
4

2 回答 2

1

尝试使用showInView而不是addSubview

[alert showInView:self.view];
于 2013-10-04T13:05:19.210 回答
0

与 OP 略有不同,为通过搜索找到此内容的人添加。在我的情况下, UIProgressBar 被添加到 UIView 没有指定 Y 偏移量。在 iOS6 下这显示在导航栏下方,但在 iOS7 下进度条在导航栏后面。我通过将进度条框架 Y 设置为导航栏的 Y + 高度来解决问题,如下所示:

CGRect navframe = [[self.navigationController navigationBar] frame];
CGFloat yloc = (navframe.size.height + navframe.origin.y);

UIProgressView *progressBar = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleBar ];
CGRect pbFrame = progressBar.frame;
CGRect vFrame = self.view.frame;
pbFrame.size.width = vFrame.size.width;
pbFrame.origin.y = yloc;
progressBar.frame = pbFrame;

[self.view addSubview:progressBar];
于 2013-12-11T21:59:12.720 回答