UIView和动画没有出现

时间:2014-11-04 22:09:25

标签: ios objective-c uiview

    UIView *timerBarView = [[UIView alloc] initWithFrame:timerRect];
    timerBarView.backgroundColor = [UIColor blueColor];
    timerBarView.alpha = 0.5;
    [theParentView addSubview:timerBarView];
    [UIView animateWithDuration:duration
                          delay:0.0
                        options:UIViewAnimationOptionCurveLinear
                     animations:^{ timerBarView.transform = CGAffineTransformMakeScale(0, 1); }
                     completion:^(BOOL fin){if(fin)[timerBarView removeFromSuperview];}];

在我更新到Xcode 6之前,我确信这段代码有效。现在,timerBar根本没有出现。所需的外观是一条长蓝色条带,水平缩小到零。

我记录了rects(紧接在上面的代码执行之前),看起来很好:

timerRect: {{10, 252}, {362, 4}}
theParentView.bounds: {{0, 0}, {382, 258}}

我甚至尝试给timerBarView一个100,100,200,50 rect并将其直接添加到视图控制器的视图中,而不是将其用作子视图。它仍然无效。

那么......我的计时器棒去了哪里? (; _)

1 个答案:

答案 0 :(得分:2)

您是否在iOS 8.0+中测试此代码?我注意到,缩放为0的动画在ios 8中不起作用,但在ios 7.0中起作用。您可以尝试设置一个非常小的值而不是0来执行动画。