簡體   English   中英

使用動畫調整UIView的大小,子視圖不會動畫

[英]Resizing UIView with animation, subview won't animate

使用UIView的animateWithDuration:animations:completion:我正在調整UIView的大小以及該UIView的子視圖,該子視圖是UITableView的子類。

UIView可以調整大小,但UITableView不能。 它確實會移動一點,但是框架無法正確更新,並恢復為原始狀態。

編輯:如果我將調整大小移到完成塊...。 是什么賦予了?

    tweetTable.autoresizingMask = UIViewAutoresizingFlexibleWidth;
    [tweetTable endUpdates];
    [UIView animateWithDuration:DURATION animations:^{
        CGRect leftFrame = leftPane.frame;
        leftFrame.size.width = self.view.frame.size.width - MARGIN;
        leftPane.frame = leftFrame;
        leftPaneButton.frame = leftFrame;

        CGRect tweetFrame = tweetTable.frame;
        tweetFrame.size.width = leftPane.frame.size.width;
        NSLog(@"%f to %f", tweetTable.frame.size.width, leftPane.frame.size.width);
        tweetTable.frame = tweetFrame;
        tweetTable.backgroundColor = [UIColor redColor];
        tweetTable.alpha = 0.5f;

        sideInfo.center = CGPointMake(self.view.frame.size.width - MARGIN + (sideInfo.frame.size.width / 2), sideInfo.center.y);
        rightPaneButton.center = sideInfo.center;
    } completion:^(BOOL finished) {
        leftExtended = TRUE;
        [tweetTable beginUpdates];
    }];

在情節提要中檢查UIView是否已選中“ 自動調整大小子視圖” 這意味着當視圖本身被調整大小時,它會調整其所有子視圖的大小。 那可以解釋為什么它在完成模塊中起作用。

暫無
暫無

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

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