0

当我的屏幕底部有一个 AdMob 视图时,我正在尝试调整我的 tableView 的大小。我尝试了几件事:动态更改 UITableView 高度在多个视图中显示 AdWhirl 广告时调整 UITableView的大小以及更改 UIViewTable 的大小以适应 AdWhirl 广告,但这些都不起作用。没有工作,我的意思是什么都没有发生。该视图与我尝试这些更改之前的视图完全相同。所以你知道,这tableView是嵌套在一个ViewController. 这是布局:

在此处输入图像描述

这是我尝试过的最后一件事:

- (void)viewDidLoad
{
    [super viewDidLoad];
     [self.navigationController setNavigationBarHidden:NO];
#ifdef FREERECORDER
    CGPoint origin = CGPointMake(0.0,self.view.frame.size.height - 90 - CGSizeFromGADAdSize(kGADAdSizeBanner).height);
    gBannerView =[[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner
                                                origin:origin];
    //this is where I'm attempting to resize
    CGRect tableFrame = self->tableView.frame;
    tableFrame.size.height = self->tableView.frame.size.height - 500;
    self->tableView.frame = tableFrame;

    gBannerView.adUnitID = @"MY_AD_ID";
    gBannerView.rootViewController = self;
    [self.view addSubview:gBannerView];
    GADRequest *request = [GADRequest request];

    // Make the request for a test ad. Put in an identifier for
    // the simulator as well as any devices you want to receive test ads.
    request.testDevices = [NSArray arrayWithObjects:
                           @" MY_TEST_ID",
                           nil];
    [gBannerView loadRequest:[GADRequest request]];




#endif

    self.title = @"All Root Beers"; 
    RootBeerFeedParser* rfp = [[RootBeerFeedParser alloc]init];
    rootBeerList = [rfp getCoreDataRootBeers];
    self.tabBar.delegate = self;
     [self->tableView reloadData];

}

这是结果:

![在此处输入图像描述][2]

它没有显示的是tableview该广告中的最后一个单元格,我正在尝试解决该问题。

4

2 回答 2

1

如果您想tableView通过更新其框架来调整大小,那么您应该关闭该autolayout模式。autolayout你应该更新约束而不是框架。

于 2013-05-25T22:29:10.223 回答
0

为了指定_新要求。

您可能还需要在某个时间点调用 setNeedsUpdateConstraints(如果您需要显示和隐藏广告视图)。

于 2013-05-26T07:00:44.553 回答