添加UITableViewController.view作为子视图表现不佳

时间:2013-03-04 18:58:35

标签: ios uiview uitableview

我正在尝试将tableview设置为我的视图,但是我无法在UITableView中显示数据(下面的NAConversationViewController是UITableViewController的子类):

Post *post = [self.fetchedResultsController objectAtIndexPath:indexPath];

UIView *takeover = [[UIView alloc] initWithFrame:self.view.frame];
takeover.backgroundColor = [UIColor colorWithWhite:0.0 alpha:0.75];

NAConversationViewController *vc = [[NAConversationViewController alloc] initWithNibName:@"NAConversationViewController" bundle:nil];
vc.managedObjectContext = self.managedObjectContext;
vc.post = post;
vc.view.frame = CGRectMake(0, self.view.frame.size.height, 320, 320);

[takeover addSubview:vc.view];
[self.view addSubview:takeover];

[UIView animateWithDuration:0.2
                 animations: ^{

                     vc.view.frame = CGRectMake(0, 100, 320, 320);
                 }
                 completion:^(BOOL finished) {
                     if (finished) {
                         [vc.view setNeedsDisplay];
                     }
                 }];

我可以获取表数据的唯一方法是[vc.view setNeedsDisplay];但是当我在桌面上滚动时,表格细胞立即消失。

我是否错误地调用了UITableView?

1 个答案:

答案 0 :(得分:1)

如果您正在使用ARC,则可能正在发布NAConversationViewController实例,并且它也是视图...尝试创建实例变量,以便视图控制器不会被释放。