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并将其直接添加到视图控制器的视图中,而不是将其用作子视图。它仍然没有工作。

那么...我的timerBar去哪了? (; _;)

最佳答案

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

关于ios - UIView和动画没有出现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26746005/

10-10 20:30