Usando Autolayout con la expansión de NSTextViews

Mi aplicación consiste en unNSScrollView cuya vista de documento contiene una serie de apilados verticalmenteNSTextViews - cada uno de los cuales cambia de tamaño en la dirección vertical a medida que se agrega el texto.

Actualmente, todo esto está gestionado en código. losNSTextViews redimensionar automáticamente, pero observo su redimensionamiento con unNSViewFrameDidChangeNotification, vuelva a calcular todos sus orígenes para que no se superpongan, y cambie el tamaño de su vista de supervisión (la vista de documento de la vista de desplazamiento) para que todos se ajusten y puedan desplazarse a.

¡Esto parece como si fuera el candidato perfecto para el autolayout! lo puseNSLayoutConstraints entre la primera vista de texto y su contenedor, la última vista de texto y su contenedor, y cada vista de texto entre sí. Luego, si cualquier vista de texto crece, automáticamente "empuja hacia abajo" los orígenes de las vistas de texto que se encuentran debajo para satisfacer las restricciones, aumentando el tamaño de la vista del documento y ¡todos están contentos!

Excepto, parece que no hay manera de hacer unaNSTextView ¿Crece automáticamente a medida que se agrega texto en un diseño basado en restricciones? Usando el mismoNSTextView que se expandió automáticamente a medida que se ingresaba el texto antes, si no especifico una restricción para su altura, el valor predeterminado es 0 y no se muestra. Si especifico una restricción, incluso una desigualdad como> = 20, permanece atascada en ese tamaño y no crece a medida que se agrega texto.

Sospecho que esto tiene que ver con la implementación de NSTextView de-intrinsicContentSize, que por defecto devuelve(NSViewNoInstrinsicMetric, NSViewNoInstrinsicMetric).

Así que mis preguntas: si las subclasesNSTextView para devolver un más significativointrinsicContentSize basado en el diseño de mi texto, ¿mi autolayout funcionaría como se esperaba?

Cualquier puntero en la implementaciónintrinsicContentSize para un tamaño vertical de NSTextView?

Respuestas a la pregunta(4)

Su respuesta a la pregunta