0

我在一个xib文件中定义了一个自定义单元格,后来我以UIActivityIndicatorView编程方式将一个单元格放置在视图控制器中。这适用于 iOS 6 及更早版本,但我无法在 iOS 7 中看到活动指示器。

我正在这样做:我首先nib在视图控制器中注册viewDidLoad

[self.tableView registerNib:[UINib nibWithNibName:@"CustomCell" bundle:nil] forCellReuseIdentifier:@"customCell"];

然后,cellForRowAtIndexPath:如果系统版本是 7.0 或更高版本,我会:

        UIActivityIndicatorView *activityIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
        activityIndicator.frame = CGRectMake(259, 21, activityIndicator.frame.size.width, activityIndicator.frame.size.height);
        [cell.contentView addSubview:activityIndicator];

但是,正如我所说,没有显示活动指示器。iOS7 中的子视图应该被添加到单元格中contentView,我还遗漏了什么吗?

谢谢

4

3 回答 3

0

我相信您已经使用界面生成器创建了单元格,即在您的情况下为“Customcell”。但是通过在“cellForRowAtIndexPath”中编码添加了活动指示器,这是错误的。尝试使用界面生成器创建活动指示器,这很容易,如有必要,将其隐藏在“cellForRowAtIndexPath”中

于 2013-11-05T09:17:31.480 回答
0

改为使用[cell.contentView.view addSubview:activityIndicator]

于 2013-11-05T10:04:43.690 回答
0

试试这个,在动画之前将活动指示器颜色更改为清晰的颜色。

[self.activityIndicator setBackgroundColor:[UIColor clearColor]];
[self.activityIndicator startAnimating];

即使它不起作用,然后尝试取消选中Animating行为attributes inspectorIB

于 2013-11-05T09:12:41.827 回答