Question

Voici la configuration:

J'ai un NSView qui est une vue soutenue CALayer, et contient beaucoup de CALayers. J'ai un CALayer pour le « fond » de la vue, et de nombreuses petites CALayers qui sont sous-couches. Parfois, ce point de vue peut être très grand (aussi grand que 2560x1400), et quand il le fait, il y a un décalage très sensible dans les CALayers. Je pense que Core Animation a des problèmes avec de très grandes CALayers.

Alors, je voudrais changer cette couche « de fond » d'être un CALayer à peut-être un CGLayer ou quelque chose, où il serait rendu comme une CGLayer normale dans la vue. Cependant, au-dessus de celui-ci, les petits CALayers seraient encore fonctionner comme ils le font maintenant. De cette façon, je n'ai petits CALayers, la couche « de fond » peut être mis en mémoire cache dans un CGLayer, et nous espérons que la performance augmentera de manière significative.

Quelqu'un sait comment cela pourrait se faire?

Était-ce utile?

La solution

Après des recherches plus, il ne semble pas que cela peut être accompli. Un NSView est soit CALayer-soutenu, ou ce n'est pas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top