问题标签 [uikit-dynamics]

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.

0 投票
0 回答
61 浏览

ios - 使用 UIKItDynamics 跳跃设置偏移动画

我有一个 UIKitDynamics 的集合视图设置感谢这里

我已经在水平滚动器中实现了它,并且在动画滚动以指定视图中的位置时遇到了一些问题。任何scrollTo:Animated:似乎都有麻烦。

首先,在选择时,我想将这些单元格居中。在动画到正确的偏移量之前,它似乎会跳回 10-15 分。

其次,在尝试滚动到一个单元格并将其水平居中远离当前视图的多个单元格时。它并没有完全成功。它没有使正确的单元格居中。

任何帮助表示赞赏,我只是在尝试动态并想了解更多信息。谢谢!

这里更成问题的是第二个问题。以下有时会正确滚动到索引 12,有时会停止。我猜想动态动画会以某种方式调整单元格,导致滚动动画认为单元格位于不同的位置。这会让我相信单元格属性的返回方式不正确。再次,对此相当陌生。

我在 ViewController 上的代码没有做任何与此冲突的特殊操作。

0 投票
1 回答
1341 浏览

ios - UIKit Dynamics 添加重力/碰撞/反弹来重新定位子视图

我正在尝试使用 UIKit Dynamics 向下移动子视图。我需要将子视图移动到特定位置,但它不起作用,它一直向下移动到主视图。这是我的代码:

我想要做的是让子视图下降并反弹回我想要的位置在这种情况下我希望子视图有这个最终的原点(352,700)

你们中的任何人都知道怎么做吗?或解决方法?

我会非常感谢你的帮助。

0 投票
1 回答
1038 浏览

ios - 使用 UIKit 动力学将两个质量相互吸引

有什么方法可以使用UIKit Dynamics将两个质量相互吸引,就像在自由空间中一样?

我知道默认情况下,重力行为就像重力指向地球一样。但这似乎只对一小部分行为有用。我能想到的唯一方法是给这两个项目巨大的质量并且没有初始重力矢量(但是将它们应用于UIGravityBehavior它们,错误地将它们添加到UIGravityBehavior?哈哈)。

但这根本没有任何作用。:/ 我对 UIKit Dynamics 中的物理特性感到非常兴奋,我希望这种行为是可能的。

如果这对于 UIKit Dynamics 是不可能的,是否还有另一种同样集成的方式(保留交互性,并作为UIView/ Button/Whatever 发挥作用)?雪碧套件?

谢谢你的帮助!

0 投票
0 回答
211 浏览

ios - UIGravityBehavior 仅旋转视图以跟随重力而不下落

向对象添加UIDynamicItemaka时会掉落。我希望它只是面向地球旋转而不会掉落。我怎样才能做到这一点?UIViewUIGravityBehavior

0 投票
1 回答
417 浏览

ios - 在 UICollectionViewCell 上实现在视图上滑动而不在滚动期间滑动

UIPanGestureRecognizer用来平移我contentViewUICollectionViewCell. 我正在从两侧执行滑动手势。我正在使用平底锅,因为我希望能够将视图弹回(动画)回其原点。

UICollectionView是一个包含行的单个部分,其中每一行都是一个项目单元格(想想表)。

问题是当我向下滚动时UICollectionView,我无意中导致我的单元格移动,因为发生的拖动翻译非常少。我已经尝试实现UIScrollViewDelegate一些方法来防止单元格在滚动过程中意外移动,但即使是“触摸单元格”边缘情况仍然会触发,导致单元格轻微平移。感觉不对,因为当您滚动并且拇指触摸单元格时,您会看到许多单元格在周围平移。

关于如何在滚动时防止这种敏感性有什么好主意吗?例如,默认的 Apple Mail.app 在滚动时似乎没有这个问题;似乎有某种内在的抵抗力。

一些想法:

  • 对 x 轴上的某个开始 k 宽度应用一些阻力函数。尝试为速度执行此操作
  • 如果速度不足以看到阻力“驼峰”。
  • 尝试使用 aUIScrollView而不是平移手势识别器,但是我还需要以某种方式支持在另一侧滑动。
  • 我应该考虑为此使用 UIKit Dynamics 吗?

任何想法,将不胜感激。

0 投票
1 回答
200 浏览

objective-c - UITableViewCell 框架不会在更改时更新

我有一个自定义 UITableViewCell 来实现使用 UIAttachmentBehavior 和 UIPanGestureRecognizer 水平滑动。这是 UITableViewCell 子类中的相关部分:

然后,当 UIGestureRecognizerStateChanged 时,我只是将 self.panAttachment.anchorPoint 设置为位置。

现在,这从启动开始就可以正常工作,但是一旦我将一个单元格添加到 tableView 或从 tableView 中删除一个单元格并尝试滑动,​​该单元格就会移动到 tableView 更改之前的先前位置(如果一个单元格是向下一个单元格删除,如果添加了一个单元格,则增加一个单元格)。据我所知,这是因为单元格的框架在 tableView 中的位置发生变化时没有更新,因此位置的 y 坐标不同步。我试过 [self setNeedsDisplay] 和我能找到的所有其他“更新视图”方法,但无济于事。

我正在创建上面引用的动画师,如下所示:

0 投票
3 回答
2863 浏览

ios - 如何判断 UIDynamicAnimator 何时处于静止状态?

我正在玩UIKitDynamics,它真的很整洁。目前我有这个代码:

这是一个简单的快照行为,而且效果很好。但是,出于各种原因,我想知道系统何时进入“静止”状态——即一切都停止移动。我对动画师的属性或委托方法都很好。

我怎样才能做到这一点?

0 投票
1 回答
709 浏览

ios - xcode UIDynamicAnimator中的多个重力或恒定力

我意识到精灵套件是游戏的方式,但我想知道是否有办法使用 UIDynamicAnimator 来设置除重力之外的其他恒定力。我正在制作一个平台游戏并将重力设置为向下。我有部分屏幕设置来代表箭头键(按屏幕顶部跳跃,左右移动......)。到目前为止,我已经使用 UIPushBehavior 来左右跳跃和脉冲。

我想做的是让视图(播放器)在按键按下时不断向左或向右移动。我想这将需要第二个横向“重力”。当触摸屏幕的左侧部分时我会打开它,当触摸被释放时我会关闭它。关于替代品的任何想法?显然你不能做2个重力。我在想如果你不能做两次力量,也许是一种为某个方向的视图设置恒定速度的方法。

编辑:我想另一种说法是......有没有办法直接设置视图的速度?

0 投票
1 回答
599 浏览

ios - 自定义 UIDynamicBehavior:我如何知道动画步骤/滴答的总数?

我想实现一个自定义 UIDynamicBehavior 使视图“爆裂”。为此,我需要将其淡出并将其缩放到其大小的 2 倍。

我通过在块中设置视图alpha和来做到这一点。但是,我怎么知道动作块被调用的频率?文档说“在每个刻度上”,但是有多少?boundsaction

我添加了一个计数器。在没有其他动画的情况下,该块被调用 30 次。有一些重力和动态行为,它被称为 500 次。

我也看不出它是如何UIDynamicAnimator知道它的行为何时“完成”移动的。任何人都可以对此有所了解吗?

下面的代码有时有效,但有时行为在视图完全动画之前停止(即它仍然可见)。

0 投票
0 回答
63 浏览

ios - UIAttachement 行为使 2 个视图在拖动时表现得像一个视图

我有一个小观点,我想附加到一个更大的观点。当其中一个视图在 x 轴上拖动时,我希望另一个相应移动 - 就好像它们是一个尴尬的形状视图

我试过了

但它们并没有像一个大视图那样移动:(