J'expérimente en utilisant cagradientlayer pour dessiner des dégradés dans notre application au lieu d'avoir une sous-classe de gérer les dégradés. Un snafu que j'ai rencontré est que lorsque la vue qui a le dégradé en tant que sous-couche de sa couche principale est redimensionnée pour s'adapter aux données que j'essaie de montrer, la couche ne se redimensionne pas avec elle. Je finis par avoir la couche de dégradé fin à la taille de l'image d'origine tandis que le cadre de ma vue est beaucoup plus grand.Comment puis-je redimensionner automatiquement le cadre d'un calque en fonction du cadre de son super-calque ou de son image?
Y a-t-il un moyen d'avoir l'autoresize de la sous-couche pour qu'elle s'adapte à la trame de sa super-couche, ou à l'image de la super-couche?
J'espère ne pas avoir besoin d'une sous-classe du tout, mais certaines fonctionnalités qui peuvent exister dans CALayers que je Je n'arrive pas à trouver que ça ferait ça pour moi (sous-classer une couche n'est pas hors de question). – Kevlar
Comment redimensionnez-vous la vue? Je redimensionne les vues en définissant le cadre et je n'ai jamais eu à redimensionner les calques. – progrmr
Je règle le cadre dans certains cas, et je laisse la vue s'autoriser dans d'autres. Je pense que le problème pourrait être que lorsque je redimensionne les vues manuellement, je désactive l'autoresizing des sous-vues afin que les sous-vues ne soient pas redimensionnées; Cela pourrait être mon problème. – Kevlar