UIView animation de masquer et d'afficher
Je suis en commençant à utiliser UIView animation. Et ne peut pas obtenir ce code fonctionne correctement. Voici ce que j'ai
if(_Language.hidden == true)
{
[UIView animateWithDuration:1.0
delay:0.0
options:UIViewAnimationCurveEaseInOut
animations:^ {
_Language.alpha = 1.0;
}
completion:^(BOOL finished) {
_Language.hidden = false;
}];
}
else
{
[UIView animateWithDuration:1.0
delay:0.0
options:UIViewAnimationCurveEaseInOut
animations:^ {
_Language.alpha = 0.0;
}
completion:^(BOOL finished) {
_Language.hidden = true;
}];
}
Ce code fonctionne de telle façon. Masquer l'animation fonctionne comme prévu. Mais montrer d'animation juste attend 1 sec, et affiche l'objet sans aucune transition. Quelqu'un peut me dire ce que je suis en manque ici?
Vous devez vous connecter pour publier un commentaire.
Vous sont en train de changer la
hidden
attribut vrai qu'après l'animation est terminée, de sorte qu'il n'apparaît pas jusqu'à ce que l'animation est terminée. vous devez le faire avant le début de l'animation :Votre
_Language.hidden
est défini commetrue
et donc quand c'est l'animation, rien n'apparaîtra sur l'écran. Vous devez le rendre visible avant d'animer. Définissez la propriété hidden faux et de montrer ensuite l'animation. L'inverse ne fonctionne que pour cacher lorsque vous l'ajoutez dans la réalisation du bloc.et de le retirer à partir de l'achèvement de bloc,