2010-07-15 3 views
5
ref1view.hidden = NO; 
[UIView beginAnimations:nil context:nil]; 
[UIView setAnimationDuration:0.25f]; 
[ref1view setAlpha:([ref1view alpha] == 1.0f) ? 0.0f : 1.0f]; 
[UIView commitAnimations]; 

Quelqu'un peut-il s'il vous plaît me donner une ventilation de comment cela fonctionne? Plus précisément cette ligne:S'il vous plaît expliquer ce code Objective-C

[ref1view setAlpha:([ref1view alpha] == 1.0f) ? 0.0f : 1.0f]; 

Il semble que cette fonction animer l'alpha 0-1 et retour de 1-0 et je ne comprends pas la syntaxe. Merci!

Répondre

13

[ref1view setAlpha:([ref1view alpha] == 1) ? 0.0f : 1.0f];:

Définit l'alpha de ref1view être 1 si elle est 0 ou 0 si elle est 1. Ceci est appelé l'opérateur ternaire , un raccourci if-else.

(condition) ? conditionistrue : conditionisfalse; 
+0

Yep, op ternaire. – Kevin

3

son opérateur ternaire ... serait le même que

if(ref1view alpha == 1) 
{ 
[ref1view setAlpha:0.0f]; 
} 
else 
{ 
[ref1view setAlpha:1.0f]; 
} 
Questions connexes