2010-09-28 9 views
1

J'ai un NSView d'hébergement de couches (-isFlipped = YES) avec trois sous-vues d'hébergement de couches. Les sous-vues sont un en-tête, une zone de contenu et un pied de page. L'en-tête comporte un triangle d'affichage qui réduit la vue du contenu et affiche simplement l'en-tête et le pied de page collés ensemble.Redimensionner un problème avec un NSView hébergeant des couches

Je peux accomplir cela assez facilement avec Core Animation, mais un problème étrange se produit lorsque je redimensionne la vue. Si je redimensionne la vue horizontalement, je souhaite que les trois sous-vues correspondent à la nouvelle largeur. Si je le redimensionne verticalement, je veux que les sous-vues restent là où elles sont (c'est-à-dire que le bord inférieur de la vue devrait pouvoir bouger sans affecter la position de la sous-vue (sauf écrêtage). Ce qui se passe réellement, c'est que les trois sous-vues sont poussées au-dessus du haut de la vue lorsque la hauteur est changée ... puis se remettent en place lorsque la vue est saturée

l'horizontal est modifié, il a quelque chose à voir avec la combinaison de la vue et des sous-vues, parce que si les sous-vues sont placées directement dans la fenêtre, elles se comportent correctement et j'ai aussi essayé d'ajouter un bouton dans la vue. J'ai été en mesure d'obtenir le bouton de mauvaise foi

avoir de la même manière en le faisant couche-back aussi ... donc je pense que le support de couche a quelque chose à voir avec cela. C'est comme si les couches de support se bloquaient sur la vue parente quand elle se redimensionne et est poussée vers le haut même si les coordonnées sont inversées.

Des idées?

Répondre