【问题标题】:Moving UIButton position, animated移动 UIButton 位置,动画
【发布时间】:2015-05-09 05:48:27
【问题描述】:

我有一个 UIButton,按下它时我想移动它的位置。

我已经通过这段代码做到了这一点:

ans2.frame = CGRectOffset(ans2.frame, 0, 20);

但是,这只是立即移动按钮。

我也尝试通过将 ++ 移动到该位置直到到达新位置,但这使它看起来像“动画”滞后。

能否以流畅的动画移动按钮?

【问题讨论】:

    标签: ios objective-c animation uibutton


    【解决方案1】:

    UIKit 提供了几种执行动画的方法。在您的情况下,最简单的方法是:

    [UIView animateWithDuration:1.0 animations:^{
       ans2.frame = CGRectOffset(ans2.frame, 0, 20);
    }];
    

    但是,动画还有很多其他可能性。结帐Apple's Animation Guide.

    【讨论】:

    • 最好对视图中心属性的更改进行动画处理。 frame 属性仅在您没有更改视图的变换时才有效。更改 center 属性始终可以正常工作。
    • 如果您使用的是 AutoLayout,那么您应该真正将约束作为出口连接到视图,并对这些约束进行动画更改。
    猜你喜欢
    • 1970-01-01
    • 2012-04-20
    • 1970-01-01
    • 2018-04-22
    • 1970-01-01
    • 1970-01-01
    • 2016-10-28
    • 2014-06-21
    • 1970-01-01
    相关资源
    最近更新 更多