表数据不会在UITableViewController中重新加载

时间:2011-08-27 20:29:28

标签: iphone cocoa-touch uitableview loadview

此代码有效:[self.tableView reloadData],但如果我像这样扩展loadView UITableViewController方法:

- (void) loadView {
    [super loadView];
    float headerHeight = 80;
    UIView *tableV = self.tableView;
    CGRect tableFrame = self.tableView.frame;

    self.view = [[UIView alloc] initWithFrame:self.tableView.frame];
    [self.view release];

    tableFrame.origin.y += headerHeight - [UIApplication sharedApplication].statusBarFrame.size.height;
    tableFrame.size.height -= headerHeight;
    tableV.frame = tableFrame;
    [self.view addSubview:tableV]; 
}

tableView数据没有重新加载。我做错了什么?

1 个答案:

答案 0 :(得分:0)

在UITableViewController中,self.view == self.tableView,所以在第7行(self.view = [[UIView...)中你实际上替换了self.view和self.tableView。

如果您只想移动表格视图,请尝试使用contentInset。