草庐IT

UICollisionBehavior

全部标签

ios - Swift 中的 UICollisions

我需要使用Swift语言在单View应用程序中制作Breakout应用程序。但是,我无法让“球”对击中障碍使用react。此外,我无法让屏障在被击中后消失。有没有人对此有解决方案,或者有没有人有我可以引用的示例应用程序?这是在单View应用程序中,而不是Sprite。vardynamicAnimatior=UIDynamicAnimator()overridefuncviewDidLoad(){super.viewDidLoad()dynamicAnimatior=UIDynamicAnimator(referenceView:view)setupViews()}funcsetupVi

ios - UICollisionBehavior 将开放路径视为关闭?

如果我定义一个开放的UIBezierPath并将其设置为碰撞边界:_containerPath=[UIBezierPathbezierPathWithArcCenter:centerradius:radiusstartAngle:M_PIendAngle:0clockwise:NO];[_collisionBehavioraddBoundaryWithIdentifier:@"containerBoundary"forPath:_containerPath];然后打开重力,在“碗”内释放的物体遵循下边界,但从碗上方释放的物体停在假定不存在的一侧。这是预期的行为吗?图中红色矩形是从上面掉

ios - 球在一个看不见的盒子里弹跳/移动 ios/xcode

我想在用户摇动设备时让球在屏幕上的对象内部发出嘎嘎声。我假设我需要设置一个不可见的盒子让它与之碰撞。它是随机移动还是沿着预定义的路径移动都没有关系,以最简单的为准。我想我理解代码的“摇动激活”部分,只是我不确定的球/物体运动 最佳答案 这应该有效://Youneedan@property(nonatomic,strong)UIDynamicAnimator*animator;inyour.hself.animator=[[UIDynamicAnimatoralloc]initWithReferenceView:self.viewTo

ios - 如何绘制一个像 UICollisionBehavior 一样的圆形 UIView?

在我的应用程序中,我目前正在绘制一个基本View,然后我尝试使用CAShapeLayer将它的角变圆,但UICollisionBehavior仍然像绘制的正方形一样使用react。这是我的代码示例UIBezierPath*path=[UIBezierPathbezierPathWithRoundedRect:self.boundsbyRoundingCorners:UIRectCornerAllCornerscornerRadii:radiiSize];//Maskthecontainerview’slayertoroundthecorners.CAShapeLayer*cornerM

ios - 更改 UIView 的边界并让 UICollisionBehavior 对其使用react

是否可以更改UIView的边界(它使用UIAttachmentBehaviors附加到其他一些UIView)并让UICollisionBehavior结合UIAttachmentBehavior响应它(就像这里的示例电影:http://www.netwalkapps.com/ani.mov,从而在触摸时球UIView变大而另一个球UIView移开)?谢谢!汤姆。 最佳答案 我让它工作了,但它很老套。我不得不从我的动画师对象中删除所有行为并重新添加它们。-(void)_tickleBehaviors{NSArray*behaviors

ios - 结合 UIAttachmentBehavior 和 UICollisionBehavior

我想使用UIKitDynamics组合UIAttachmentBehavior和UICollisionBehavior,以便用户可以拖动View(使用UIPanGestureRecognizer)但不会离开特定区域。当用户/UIView与碰撞行为的边界发生碰撞时,问题就出现了,因为此时不可能进行垂直移动。即当与边界区域的左侧发生碰撞时,一个人会“卡住”在那里,不能上下移动,就在右边。将UIView拖回原来的路径。非常感谢UIDynamicItemBehavior解决此问题的任何帮助(尝试了弹性、摩擦和阻力,但无济于事)。 最佳答案

ios - UICollisionBehavior - View 穿过边界

作为实现UICollisionBehaviour的一部分,我为屏幕边缘设置了边界。然后我添加了一些View,最后将UIPanGestureRecognizer附加到其中一个。现在我可以使用可拖动View来插入较小的View。问题:如果我将一个较小的View转角并继续将其推向屏幕边缘,它最终会滑过边界并被困在另一侧。我用来击打和插入其他View的“锤subview”也会陷入边界。IE。它被卡在/不可拖动到屏幕的一侧。我做了一个非常小的例子,看看当我只有很少的View并且没有冲突的行为时,我是否可以重现它,View仍然穿过边界。要么UIDynamics不能处理太多,要么(更有可能)我以某种

ios - UICollisionBehavior - View 穿过边界

作为实现UICollisionBehaviour的一部分,我为屏幕边缘设置了边界。然后我添加了一些View,最后将UIPanGestureRecognizer附加到其中一个。现在我可以使用可拖动View来插入较小的View。问题:如果我将一个较小的View转角并继续将其推向屏幕边缘,它最终会滑过边界并被困在另一侧。我用来击打和插入其他View的“锤subview”也会陷入边界。IE。它被卡在/不可拖动到屏幕的一侧。我做了一个非常小的例子,看看当我只有很少的View并且没有冲突的行为时,我是否可以重现它,View仍然穿过边界。要么UIDynamics不能处理太多,要么(更有可能)我以某种

ios - UICollisionBehavior - UIView 碰撞的自定义形状

我正在尝试弄清楚如何使用UIKitDynamics成功地碰撞两个具有自定义边界形状的UIView。我能想到的最基本的例子来解释我的问题是让两个圆碰撞(考虑到它们的圆角)而不是它们的方形边界。我确定我在某个地方看到过这个,但我无法从任何官方来源找到关于该主题的任何文档或讨论。 最佳答案 我也想这样做,但我认为您不能在当前的iOS7UIKitDynamics下做到这一点。添加到动画器的项目必须采用UIDynamicItem协议(protocol)(UIView可以)。该协议(protocol)仅通过bounds属性将它们的边界指定为矩形

ios - UICollisionBehavior 边界不起作用

我在导航Controller中有一个View。然后我向该View添加一个subview并偏移其原点高度,使其仅覆盖屏幕的一半(另一半溢出屏幕底部)。然后我希望能够向上拖动此View,但当它到达导航栏底部时它会停止。我正在使用UIPanGestureRecognizer来处理View的拖动,这工作正常,但它似乎不会在边界处停止。这是我正在使用的代码:bottomNavbarY=UIApplication.sharedApplication().statusBarFrame.size.height+self.navigationController!.navigationBar.frame
12