J'aime ce uisnapbehavior code> extrait, mais je veux vraiment l'utiliser pour glisser dans spritekit code> a permet une propriété code> qui peut être facilement désactivé. P>
5 Réponses :
Il suffit de devoir simplement utiliser: p> uikitynnynamics code> strud> pour cela. [UIView animateWithDuration:0.5
delay:0.0
usingSpringWithDamping:0.65
initialSpringVelocity:0.5
options:0
animations:^
{
self.transform = (self.expanded) ? self.openedTransition : self.closedTransition;
}
completion:nil];
D'accord, si tout ce que vous voulez, c'est l'effet de printemps, il s'agit d'une approche plus simple que d'utiliser une dynamique uikit.
UIView est conforme à Uidynamicitem, qui a une propriété de transformation qui est appelée lorsqu'une rotation est faite. SO SETTRANSFORME SETTRANSFORT: Avec Néanness ...
- (void)setTransform:(CGAffineTransform)transform
{
}
Voici une meilleure réponse: Un Uisnapbehavior a une propriété d'action, qui prend un bloc qui est appelé à chaque étape. Réglage de ce bloc comme celui-ci ...
snapBehavior.action = ^{ view.transform = CGAffineTransformIdentity; };
Vous pouvez le faire en ajoutant un uidynamicittempheavior code> à votre uidynamicanimator paramètre>, puis définissant son Permet la propriété code> de propriété non code> Comme:
D'accord, il s'agit de la technique pour arrêter la rotation dans un uisnapbehavior code>. Et si vous avez d'autres comportements de dynamique uikit en place que vous devez honorer (par exemple, uicollisionbehavior code>), c'est la bonne réponse, comme le animatewithduration code> suggéré ailleurs n'honorera pas d'autre Comportements que vous pourriez avoir en place.
Je cherchais la même solution moi-même, mais la définition J'étais capable d'empêcher tout mouvement de Voici un exemple de ce qui a fonctionné pour moi: p> perforation code> sur un uidynamicicitTempheavior code> ne m'a pas vraiment donné l'effet que je cherchais. uisnapbehavior code> en passant à l'aide de uicollisionbehavior code> et en plaçant deux limites de chaque côté de la vue que je ne voulais pas bouger (dans mon cas, j'ai configuré les limites sur le côté gauche et droit de la vue pour prévenir le mouvement des axes X). Pour obtenir un joli effet gonflable, j'ai également défini frottement code> à 0 (en utilisant uidynamicicitTemphehavior code>) et ajusté le amortissement code> sur uisnapbehavior code> Pour obtenir la bonne quantité de rebond. p>