Domanda

Sto lavorando su un'app Snow Leopard e sto realizzando alcune animazioni di vista (scambiandole) e ho visto alcuni esempi precedenti usando NSViewAnimation. Mi chiedo se questi sono completamente obsoleti da Core Animation?

Mi sembra abbastanza semplice da usare

[[myView animator] setFrame:newSwapFrame];

Ma mi chiedo solo se mi manca qualcosa o se NSViewAnimation è ancora rilevante (tranne che per la compatibilità con le versioni precedenti).

È stato utile?

Soluzione

Generalmente dovresti passare a Core Animation per il codice 10.5+. NSViewAnimation è abbastanza primitivo e non fa un uso efficiente dell'hardware. Non riesco a pensare a nessun vantaggio di stare con NSViewAnimation diverso dalla compatibilità 10.4.

Altri suggerimenti

Ci sono alcuni casi in cui Core Animation non è adatto. Ad esempio, non è possibile inserire una visualizzazione Web in una vista con supporto a livelli senza che accadano cose funky.

Inoltre, i campi di testo nelle viste supportate da livelli non usano l'anti-aliasing subpixel, che può essere un grosso problema.

Se non si utilizzano viste supportate da livelli, l'esempio del solo utilizzo del supporto delle proprietà animabili è decisamente più semplice rispetto all'utilizzo di NSAnimation.

Se è necessario ottenere uno screenshot della finestra in un secondo momento (come esempio, per creare un'animazione di transizione tra due stati della finestra), le viste Animated Core (vista con CAAnimation ) potrebbero non essere state acquisite. Ma CAAnimation funziona sempre velocemente e NSAnimation potrebbe rallentare se la CPU è troppo occupata.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top