2013-03-13 3 views
17

Voglio usare l'animazione per cambiare il colore di UIView per renderlo sfumato, tuttavia, in qualche modo non posso accedere e impostare l'opacità, ma posso impostare alpha. Mi chiedo se alfa e opacità siano uguali? Cerca sul web e non ho trovato una buona risposta. Grazie mille per il vostro aiuto!L'opacità e l'alfa sono la stessa cosa per UIView

risposta

30

In realtà "opacità" significa "valore del canale alfa" del tuo UIView. Quando una vista è completamente opaca, ciò significa che è alpha = 1, quando una vista è completamente trasparente (non opaca) il suo alpha = 0.

Per quanto riguarda le proprietà di CALayer e UIView in Cocoa, sì, forniscono la stessa funzionalità.

+0

Grazie Alex! E mi sono reso conto che accedere a alpha è più semplice dell'opacità di accesso nella codifica, dal momento che quest'ultimo richiede l'importazione della lib QuartzCore. – trillions

+0

prego) – alex

11

Basta provare da soli!

CALayer ha opacity da 0 a 1, mentre UIView ha alpha da 0 a 1. Hanno lo stesso effetto visivo.

+0

Grazie Cyrille! – trillions

4

L'alfa influenza tutto ciò che è disegnato sulla vista. L'alfa del colore di sfondo influisce sulla trasparenza del colore dello sfondo e su qualsiasi altra cosa disegnata sulla vista. Ciò determina un effetto gelido su tutta la vista. Opacità significa non disegnare nulla al di sotto, anche se sei trasparente, si limita a effettuare la vista corrente.

+0

Non ha alcun impatto sulle visualizzazioni secondarie, quindi non è tutto "tutto disegnato sulla vista" - dai documenti di Apple: * "Questo valore influisce solo sulla vista corrente e non influisce su nessuna delle sue sottoview incorporate" * – lxt

+0

I penso ci sia un'altra confusione ... C'è un campo chiamato "BOOL Opaque" che ha qualche descrizione su come influenzerà le sottoview ... – trillions