sách gpt4 ai đã đi

UIKit Dynamics UICollisionBehavior va chạm không nảy

In lại 作者:行者123 更新时间:2023-12-04 08:35:25 26 4
mua khóa gpt4 Nike

我有一个 View ,其边界设置为碰撞( setTranslatesReferenceBoundsIntoBoundaryWithInsets )和一个带有重力的 subview 设置,以便它可以与 super View 边界发生碰撞。

我正在尝试使碰撞的弹性为 0%,但我还没有弄清楚如何。我试过 UIDynamicItemBehavior对于弹性为 0 的 subview ,摩擦力也高得离谱,什么也没有。我的理由是 0 弹性已经意味着 0 力在冲击时再生,但即使是负数似乎也无济于事或对此无能为力。

关于如何使碰撞吸收所有能量或使 subview 在与边界碰撞时不反弹的任何想法?

1 Câu trả lời

我可能做错了,但以下似乎在一个简短的例子中起作用:
为有问题的项目分配 UIDynamicItemBehavior:

self.itemBehaviorInQuestion = [[UIDynamicItemBehavior alloc] initWithItems:@[self.infoView]];
self.itemBehaviorInQuestion.resistance = 0;

self.collisionBehavior = [[UICollisionBehavior alloc] initWithItems:@[self.infoView]];

self.collisionBehavior.collisionDelegate = self;

[self.animator addBehavior:self.collisionBehavior];
[self.animator addBehavior:self.itemBehaviorInQuestion];
实现以下 UICollisionBehavior 委托(delegate)方法:
- (void)collisionBehavior:(UICollisionBehavior *)behavior beganContactForItem:(id)item withBoundaryIdentifier:(id)identifier atPoint:(CGPoint)p
{
self.itemBehaviorInQuestion.resistance = 100;
}

- (void)collisionBehavior:(UICollisionBehavior *)behavior endedContactForItem:(id)item withBoundaryIdentifier:(id)identifier
{
self.itemBehaviorInQuestion.resistance = 0;
}
在那一刻将阻力设置为高值似乎可以减轻项目的反弹。

关于uikit-dynamics - UIKit Dynamics UICollisionBehavior 无反弹的碰撞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20038877/

26 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com