簡體   English   中英

UIView不會調整大小

[英]UIView Will Not Resize

我的故事板元素是containerView的子視圖,containerView是主視圖的子視圖。 當有廣告可以展示時,我正在嘗試調整容器視圖的高度,但我無法使其正常工作。 我可以抵消視圖,但是無法調整大小。 我已經看到了很多關於此的帖子,但是我閱讀的所有建議基本上都說過以確認未選中“自動布局”。 我已確認未在情節提要的每個元素中選中“自動布局”,但仍無法成功完成。 廣告橫幅(剛從屏幕外的[0,480]處彈出,就像我想要的那樣從底部很好地彈出,但是它掩蓋了我的情節提要元素,這簡直就是UNACCEPTABLE。我不會支持它!我需要一些!伙計們和朋友們……請參見下面的代碼:

-(void)bannerViewDidLoadAd:(ADBannerView *)banner
{
    if (_bannerIsVisible == NO)
    {
        NSLog(@"Ad Loaded");

        [UIView beginAnimations:@"animateAdbannerOn" context:nil];

        //_containerView.frame = CGRectOffset(_containerView.frame, 0, -50);

        _containerView.frame = CGRectMake(_containerView.frame.origin.x,

                                 _containerView.frame.origin.y,

                                 _containerView.frame.size.width,

                                 _containerView.frame.size.height-50);


        banner.frame = CGRectOffset(banner.frame, 0, -50);

        [UIView commitAnimations];

        _bannerIsVisible = YES;
    }
}

像這樣嘗試:

-(void)bannerViewDidLoadAd:(ADBannerView *)banner
{
if (_bannerIsVisible == NO)
{
    NSLog(@"Ad Loaded");

    [UIView beginAnimations:@"animateAdbannerOn" context:nil];

    //_containerView.frame = CGRectOffset(_containerView.frame, 0, -50);

    CGRect frame = CGRectMake(_containerView.frame.origin.x,

                             _containerView.frame.origin.y,

                             _containerView.frame.size.width,

                             _containerView.frame.size.height-50);

    [_containerView setFrame:frame];

    CGRect frame2 = banner.frame;
    frame2.origin.x = 0;
    frame2.origin.y = -50;
    [banner setFrame:frame2];

    [UIView commitAnimations];

    _bannerIsVisible = YES;
}
}

您剛剛更改了containerView的框架。 這絕不會改變containerView的子視圖的框架。 您要么必須使containerView成為滾動視圖,要么更改每個組件的框架。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM