2013-03-25 72 views

回答

0

YIF你把你的UITableView动态的UIView,尝试设置autoresizingMask:

tableView.autoresizingMask = (UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin); 

,然后添加的tableView为子视图:

[view addSubView:tableView]; 

希望这有助于

+0

我不是动态创建我的表格,而是使用故事板。我试图以编程方式执行它,但不幸的是它没有工作。 – 2013-03-25 14:18:49

0

您是否尝试过在添加父UIView之前或之后为UITableview设置框架,如[myTableView setFrame:CGRectMake(parentView.frame.origin.x+5,parentView.frame.origin.y+5,parentView.frame.size.width-10,parentView.frame.size.height-10)];

+0

我不能设置表格的框架,我希望它适合超级视图的大小(UIView) – 2013-03-25 14:05:29

1

我已经解决了这个问题,将动态控件和表放在单独的视图中。我有不同的导航栏高度+ iAd横幅出现和消失。

- (void)bannerViewDidLoadAd:(ADBannerView *)banner { 
    if (!self.bannerIsVisible) 
    { 
    [UIView beginAnimations:@"animateAdBannerOn" context:NULL]; 
    banner.frame = CGRectMake(0, 0, 320, 50); 

    self.tableView.frame = CGRectMake(0, 50, 320, self.view.frame.size.height - 50); 

    [UIView commitAnimations]; 
    self.bannerIsVisible = YES; 

    } 
} 

- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error { 
    [UIView beginAnimations:@"animateAdBannerOn" context:NULL]; 
    banner.frame = CGRectMake(0, 0, 320, 0); 

    self.tableView.frame = CGRectMake(0, 0, 320, self.view.frame.size.height); 

    [UIView commitAnimations]; 
    self.bannerIsVisible = NO; 
} 
相关问题