J'ai une vue NSTableView
. J'ai positionné le textField
et d'autres éléments dans un NSTableCellView
dans Interface Builder avec autolayout. Comment puis-je obtenir la hauteur de la cellule en fonction de ses paramètres d'autolayout?
Cette réponse est le plus proche de ce que je cherche, mais il est écrit pour iOS et le systemLayoutSizeFittingSize
méthode n'existe pas sur NSView
.
Réponses:
5 pour la réponse № 1Vous pouvez placer les vues dans la vue de votre cellule de tableau NSView
(appelons cette vue contentView
). Définir les contraintes de mise en page automatique pour contentView
de sorte qu'il s'aligne sur sa vue parente à gauche (en tête), en haut et à droite (en fin). Assurez-vous que les sous-vues de contentView
redimensionner leur vue parent. Créé un IBOutlet
sur cette vue dans votre NSTableCellView
sous-classe. Pour calculer la hauteur, appelez fittingSize
sur contentView
qui devrait vous obtenir le minimal taille de vos sous-vues en fonction des contraintes.