iOS - Flip animation que d'une seule vue
je suis en train de développer un jeu qui contenait certains (comme la mémoire de la carte de jeu) et je veux que lorsque l'utilisateur d'appuyer sur une carte de ce flip et montre un autre point de vue. J'utilise ce code :
- (void)flipCard:(id)sender {
UIButton *btn=(UIButton *)sender;
UIView *view=[btn superview];
UIView *flipView=[[UIView alloc] initWithFrame:[view frame]];
[flipView setBackgroundColor:[UIColor blueColor]];
[[flipView layer] setCornerRadius:10];
NSLog(@"Flip card : view frame = %f, %f",view.frame.origin.x, view.frame.origin.y);
[UIView transitionFromView:view toView:flipView duration:1.0 options:UIViewAnimationOptionTransitionFlipFromLeft completion:^(BOOL finished) {
}];
}
Chaque point de vue a un bouton transparent qui couvrent l'ensemble de la vue, de sorte que lorsque l'utilisateur d'appuyer sur un point de vue est que appuyez sur le bouton. Le bouton d'appel de la méthode ci-dessus, passage de l'expéditeur.
Lorsque l'animation commence à tout point de vue est retourné, pas seulement le point de vue-je obtenir de l'expéditeur.
Comment puis-je faire?
- Peut-être pas une solution directe mais, vous pouvez essayer de l'étendre UIButton pour les boutons que vous avez utilisé sur les cartes et ont un faible pointeur de retour à la carte de la vue, par conséquent, l'appel de btn.cardView serait certainement vous obtenir le point de vue de la carte que vous avez voulu, si superview ne fonctionne pas.
Vous devez vous connecter pour publier un commentaire.
Le code suivant peut vous aider avec votre problème. Je pense que c'est plus propre qu'à l'aide d'un bouton transparent.
setHidden
etaddSubview
techniques: ce n'est pas cohérente et une fois, il y aura une sous-vue dans le conteneur, l'autre fois, deux sous-vues. Je recommande de s'en tenir à une technique: soit à la fois avant et à l'arrière sont allumés avecsetHidden
, ou les deux avant et arrière sont allumés avecremoveFromSuperview
.J'ai eu le même problème. Après des recherches sur les différents postes sur l'internet j'ai été en mesure de venir avec un élégant et facile solution. J'ai les cartes personnalisées UIButtons. Dans la coutume UIButton classe, j'ai ajouté la méthode qui change l'image de fond avec un flip animation:
Espère que cela aide quelqu'un d'autre que la première réponse a déjà été acceptés
Mise à JOUR
Si vous êtes sur le point de vue contenant ce sous-afficher le code est:
Mon cas d'utilisation de Swift 4: