如何在UIStackView中更改比例

时间:2018-08-17 22:05:29

标签: ios uiview uistackview

我在垂直UIStackView中有3个视图。该视图是具有以下方法的UIView子类的实例:

- (CGSize)intrinsicContentSize {
    return CGSizeMake(1.0, self.height);
}

在我的视图控制器中,我可以在viewDidLoad中执行此操作:

self.section1.height = 30;
self.section2.height = 30;
self.section3.height = 40;

一切正常。第1节和第2节占堆栈视图高度的30%,第3节占堆栈视图高度的40%。

但是我以后如何更改这些比例?这什么也没做:

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        self.section1.height = 10;
        self.section2.height = 50;
        [self.view setNeedsLayout]; //tried self.stackView as well

        [UIView animateWithDuration:1.0 animations:^{
            [self.view layoutIfNeeded]; 
        }];

0 个答案:

没有答案