pregunta sobre el tamaño de UIView que se adapta

Posible duplicado:
iPhone: el parámetro de input al método sizeThatFits de UIView

Específicamente, ¿qué se supone que es su argumento? La documentation dice que es el tamaño actual del receptor, pero una vista siempre puede usar self.bounds.size , por lo que no tiene sentido.

¿Se supone que es el espacio disponible? En otras palabras, el padre le pregunta al niño, "dado que hay espacio disponible de puntos X x Y, ¿qué tan grande quieres ser?".

Simplemente creo que el documento está mal cuando dice "El tamaño actual del receptor". Es solo un caso de uso, pero hay otros: por ejemplo, si desea que la vista muestre su mejor tamaño dado un tamaño arbitrario, llamará a este método pasando su tamaño arbitrario como el parámetro.

¿Se supone que es el espacio disponible? En otras palabras, el padre le pregunta al niño, "dado que hay espacio disponible de puntos X x Y, ¿qué tan grande quieres ser?".

Sí, tienes la idea pero no restringes el significado del argumento al "espacio disponible". Es solo un tamaño arbitrario que puede o no corresponder a un espacio disponible. Depende de cómo esté usando el método. Sin embargo, se supone que la vista siempre devolverá lo que considera su mejor tamaño (el tamaño que mejor se ajusta a sus subprocesss) si tiene que ajustarse al tamaño pasado como argumento.

Mire aquí, esto debería responder a su pregunta: iPhone: el parámetro de input al método sizeThatFits de UIView

Casi exactamente eso. Las classs como UIPickerView y UILabel tienen contenido que funciona mejor en tamaños particulares, y como tales, devuelven esos tamaños específicos en lugar del tamaño de bounds más general.

Simplemente sizeThatFit: el método debe replacese con el nuevo CGSize, y el método sizeToFit llama a sizeThatFit para cambiar el tamaño.

sizeThatFits se puede usar cuando la supervisión supervisa a sus hijos.

Digamos que tiene una vista de supervisión de 300 píxeles de ancho y aún no sabe qué altura será, la altura se basará en la sum de la altura de los niños. En este caso, la vista de supervisión pasaría de tamaño a sizeToFit que representa el espacio disponible restante, que sería diferente de los límites de la supervisión.