2016-03-01 24 views
5

Ho intenzione di avere una vista che potrebbe contenere più centinaia di oggetti CALayer all'interno e uno accanto all'altro. Quindi questo deve essere il più performante possibile. Questi strati non sono molto complessi. Sono opachi e potrebbero essere strati di testo o di forma. Questa quantità di livelli deve essere strutturata. Vorrei usare CAConstraints per questo.Prestazioni NSView CALayer vs. Layer backed

dalle mele Documenti:

Importante: In OS X v10.8 e successive, si consiglia di ridurre al minimo l'uso di gerarchie di livello e basta usare viste strato-backed. Le norme di ridisegno dei livelli introdotte in quella versione di OS X consentono di personalizzare il comportamento delle viste con layer supportato e di ottenere comunque il tipo di prestazioni che avresti potuto ottenere utilizzando layer autonomi.

So che gli oggetti CALayer sono più leggeri delle viste. Non sono sicuro che sia perché dovremmo utilizzare direttamente le viste con lo strato anziché i livelli. E 'per la facilità d'uso con Auto Layout o ci sono più motivi relativi alle prestazioni/memoria per questa affermazione? Mi piacerebbe ottenere le migliori prestazioni possibili, poiché questo codice verrà eseguito sia su OS X che su iOS.

Quale modo dovrei andare? Layout automatico e sottostrato NSViews o gerarchia personalizzata CALayer?

+1

CAConstraints non sono disponibili su iOS. Sembra che stiano dicendo che le visualizzazioni supportate da layer sono più flessibili ma possono darti le stesse prestazioni. – beyowulf

+0

I Avrei dovuto cercare la disponibilità di CAConstraints .. Grazie! – mangerlahn

risposta

0

Ho deciso di andare con viste a strati. Le prestazioni sono molto buone finora. Le viste sono tutte disposte da stackView.

Problemi correlati