当前位置: 首页 > 知识库问答 >
问题:

iOS中的动画错误

柯振濂
2023-03-14

我正在尝试一个简单的动画,当按钮被按下时移动UIView的子类。当按钮被按下时,视图会从原始位置移动xx个单位,错误是它在移动xx个单位后回到原始位置。我希望它停在新位置。我的代码有什么问题?

[UIView animateWithDuration:0.5f animations:^{
    self.analogStick.frame = CGRectOffset(self.analogStick.frame, 0, -10);
}];

共有1个答案

仲浩旷
2023-03-14

将布局约束作为IBMoutlets从Interface Builder连接到代码中。然后在块的开头,将约束的常数设置为所需的值,例如将左约束设置为superview,使其常数为10。

然后,在动画块代码中,只需调用[self layoutIfNeed]。使用约束时不要以任何方式设置帧(您可以使用3D变换,但我个人不推荐它,除非您确切地知道自己在做什么)。

 类似资料:
  • 问题内容: tableview动画错误的视频 我有一个扩展/折叠其单元格的表格视图。 从iOS 11开始,tableView在插入和删除行时开始表现异常。contentSize在动画块发生之前已更改,因此,在视频中,您可以看到折叠的单元格上发生了错误的滚动回退。动画看起来不对。 这段代码在iOS 10上运行良好。有人知道苹果方面发生了什么变化吗?这是一个已知的问题? 问题答案: 我在iOS 11上

  • 我正在评估将AdMob Interstitual纳入iOS应用程序的可能性。有一件事我不确定,那就是我们是否能以一种生动的方式呈现间隙。从文档中可以看出,显示间隙的唯一方法是使用 方法,因为GadInterstival不是视图,而是NSObject。是否有任何方法可以在动画中显示它,例如滑动/滚动? 谢啦!

  • 我有一个叫波浪的UIView,它有一个漂亮的无尽的“浮动”动画 现在,如果我添加另一个动画,比如说将这个视图移动到不同的位置,“浮动”动画就会停止。这是一个合理的反应,在完成块中再次启动“浮动”是没有问题的。我只是想知道我是否遗漏了什么,也许是在动画选项中,以不相互中断的方式将两者结合起来。 我能够这样做,如果第二个动画是基于CGAffineTransfromScale,它们结合没有问题,但当我移

  • iOS 13/13.1自动旋转的行为似乎与iOS 12不同。例如,“我的应用”允许用户在设置中将界面方向锁定为纵向或横向模式。 > 如果我在设备上有纵向旋转锁定并返回。横向在supportedInterfaceOrientations中,界面保持纵向模式,直到我在设备上禁用纵向锁定方向。iOS 12似乎并非如此。事实上,在iOS 13中甚至没有调用supportedInterfaceOrienta

  • 本文向大家介绍iOS实现滚动字幕的动画特效,包括了iOS实现滚动字幕的动画特效的使用技巧和注意事项,需要的朋友参考一下 效果图 开始上代码 滚动字幕的原理是用timer定时器间隔一定的时间来驱动scrollView上的内容偏移,来实现滚动的效果,原理比较简单,关键是有些细节需要处理好,实现流畅效果的同时要考虑到性能优化 这里是.h文件的接口方法及属性,可适应大部分自定义场景 实现滚动字幕的思路和无

  • 我想为使用动画,但当为使用动画时,强制关闭我的应用程序并显示上下文错误即使我不能在适配器中使用toast如何在适配器中使用动画并解决上下文问题,我放了我的代码,如何能解决我的问题或适配器?请帮助我 我的错误