问题标签 [uidynamicanimator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - swift中的UIPushBehavior
我想在 Swift 中实现 UIPushBehavior,但我总是遇到以下错误:...查看项目 UIImageView 应该是 UIDynamicAnimator 中参考视图的后代...
我正在将视图添加到行为中,并将行为添加到动画师...
我还将动画师的referenceView设置为应该发生动作的gameView......
我希望你能帮助我弄清楚如何解决我的小问题......
ios - 滑块决定重力
到目前为止,我已经创建了一个从底部开始并使用 UiDynamicAnimator 向上移动的矩形。我希望用户确定负重力的“强度”。我希望用户通过滑块确定值。
到目前为止,这是我的代码:
我收到两个错误:
“‘value’的模糊使用”和“使用未解析的标识符‘sliderValue’”
如何将“sliderValue”转换为只有一位小数的浮点数?
ios - UIDynamicAnimator、removeAllBehaviors() 第一次不起作用
我定义了 UIDynamicAnimator 属性:
self 是 UIView 的子类;
在 self 类的扩展中,同一个文件,我有动画逻辑,使用我的动画师,添加 UIDynamicBehavior 项目:
一切正常,但是当我尝试使用 removeAllBehaviors() 停止所有动画时,动画会停止,但行为仍然在 animator.behaviors 中。我第二次调用它时,数组变为空。
//======
对于我的 pushBehavior,我添加了动作,它改变了 var,表明我达到了目标点:
在 collisionBehavior 委托方法中,我检查此变量并尝试使用 removeAllBehaviors() 停止动画
autolayout - UISnapBehavior 动画故障
当使用 UISnapBehavior 将视图重置到屏幕中心时,我得到了预期的反弹效果。但是在滚动作为被捕捉视图的子视图的 UIScrollView 之后,UISnapBehavior 阻尼似乎有不同的基本计算。
我的快照行为是这样创建的:
在与作为识别器视图的子视图的滚动视图交互之前,snapBehavior 表现出非常夸张的反弹效果(这是所需和预期的行为),但在与滚动视图交互之后,然后再次触发 snapBehavior 效果更快(阻尼更少)尽管使用完全相同的阻尼常数。
我认为这与一些自动布局错误有关,因为滚动视图是使用自动布局定位的,并且它的内容大小是由自动布局约束动态计算的。
有趣的是,移除滚动视图会导致动态动画再次正确衰减。
ios - UIDynamicAnimator在swift 3中丢球循环
我有UIDynamicAnimator
球从上往下掉,但有时掉 3 个球,有时掉 5 个……等等。
但我 to = 50
在我的 for 循环中添加必须是 drop 50 球
哪里错了?
我的代码在下面。
ios - 使用 UIGravityBehavior 的子视图有不同的重力
我有一个带有一组子视图的 viewController。目前,它们的重力是相同的。我希望能够为每个子视图设置不同的重力方向值。有人可以告诉我怎么做吗?
提前致谢
编辑:目前在控制台中获取此输出“每个动画师的多重重力行为未定义,将来可能会断言”
ios - “启动”并放下一个 UIView
上图说明了我想要的:
- 红圈是一个 UIView 的起点
- 我想通过改变 X 位置向上启动它(Y 位置)
- 我想让它落在界限内。
我尝试了什么:
对于启动,我可以使用 UIView.animate 函数。对于 drop,我可以使用 UIDynamicAnimator。但是也存在一些问题:
- 在 UIView.animate 我不能“弯曲”动画,只能是一条直线。我可以在这里使用这个答案来绘制曲线:https ://stackoverflow.com/a/43813458/7715250
- 结合这两个功能是行不通的。UIView.animate 完成后,UIView 直接向下下降。
UIDynamicAnimator 的代码:
这将使 UIView 具有很好的反弹效果。但是如何启动 UIView?如何更改 X 和 Y 位置并保持添加的行为?
ios - 如何暂停和恢复 UIDynamicAnimator 物理模拟
您将如何暂停和恢复 UIDynamicAnimator 的物理模拟?无法以编程方式暂停和恢复。当所有项目都处于静止状态时,会出现“暂停”状态,但我正在寻找不同的东西。例如,我想让一个项目被重力场拉动,然后按下暂停按钮暂停模拟,然后按下恢复按钮并恢复模拟,就好像什么都没发生一样。该项目保持其轨迹、速度等。
我的预感是我必须以某种方式保存项目的物理属性,删除动态行为,然后添加动态行为以模仿之前保存的物理属性。这是正确的方法吗?