Mik*_*ike 5 iphone animation uiview ios
我有一个UILabel我希望动画成长和缩小.当尺寸发生变化时,我需要左下角保持静止,以便它始终显示在底部工具栏的正上方.我使用以下代码使标签增长:
[UIView animateWithDuration:kAnimationDuration delay:0.0 options:UIViewAnimationCurveEaseInOut
animations:^{
CGFloat lblHeight = 42.0f;
[label setFrame:CGRectMake(0.0,
CGRectGetMaxY(self.view.bounds) - kBottomBarHeight - lblHeight,
CGRectGetMaxX(self.view.bounds),
lblHeight)];
} completion:^(BOOL finished) { }];
Run Code Online (Sandbox Code Playgroud)
为了使它缩小我使用相同的逻辑,除了lblHeight设置为17.0f
视图正确增长但是当我尝试缩小它时,帧更改动画不会动画化.它会突然显示新的大小,然后动画到新的原点/位置.我需要将帧更改设置为动画.谁能看到我做错了什么?
经过一番修补后,我成功地通过执行以下操作获得了所需的行为。
在展开方法中,我使用 UIView 动画来更改框架。在收缩方法中,我使用 UIView 动画来改变边界和中心。
我有点困惑为什么这能起作用,但尝试用框架缩小却不起作用。如果有人可以分享对此的一些见解,那就太好了。
| 归档时间: |
|
| 查看次数: |
5752 次 |
| 最近记录: |