9
votes

Uikit Dynamics UicollisionBehavior Collision sans rebond

J'ai une vue dont les limites sont configurées pour les collisions ( setTranslatesreferenceBoundSintOntOntOnwithIsets ) et une configuration de Sous-View avec gravité afin qu'elle puisse entrer en collision contre les limites de SuperView.

J'essaie de faire la collision 0% Bouncy, mais je n'ai pas encore compris comment. J'ai essayé un uidynamicicitTempehavior pour la sous-sousview avec élasticité à 0, également avec des frictions ridiculement élevées et rien. Ma justification était que 0 élasticité signifie déjà 0 la régénération de la force sur l'impact, mais même des chiffres négatifs ne semblent rien faire ou très peu à ce sujet.

Des idées sur la manière de faire absorber la collision toute l'énergie ou tout ce qu'il faut pour faire de la sous-évaluation non rebondir lorsqu'il collide contre les limites?


0 commentaires

3 Réponses :


0
votes

J'ai une idée de la façon de le faire, mais je ne l'ai pas testé. CAREAT Emptor!

Utilisez UidYnamicitTemberhavior sur votre vue. Ensemble résistance à une valeur élevée après la collision, à l'aide de la méthode UicollisionBehaviordélégate CollisionBehavior: findContactforitem: Sansitem. «Résistance» est comme un frottement entre l'article et la vue personnelle. Voici un croquis ... xxx

puis dans le délégué xxx


0 commentaires

1
votes

Vous devez définir la valeur de l'élasticité: xxx


0 commentaires

3
votes

Je peux le faire mal, mais ce qui suit semblait fonctionner dans un bref exemple:

Allouer UIDYnamicitTempehavior pour les articles en question: P>

- (void)collisionBehavior:(UICollisionBehavior *)behavior beganContactForItem:(id<UIDynamicItem>)item withBoundaryIdentifier:(id<NSCopying>)identifier atPoint:(CGPoint)p
{
    self.itemBehaviorInQuestion.resistance = 100;
}

- (void)collisionBehavior:(UICollisionBehavior *)behavior endedContactForItem:(id<UIDynamicItem>)item withBoundaryIdentifier:(id<NSCopying>)identifier
{
    self.itemBehaviorInQuestion.resistance = 0;
}


1 commentaires

Bonne idée. Fonctionne bien et devrait être la réponse acceptée.