Estoy construyendo una aplicación para iOS en Xcode 5, y estoy teniendo problemas para agregar restricciones de diseño. En Xcode 4.x, sólo quisiera agregar de avance y retroceso/parte superior/inferior de espacios para el contenedor (superview) a cualquier elemento de interfaz de usuario. Ahora, sólo tengo esta opción:

Agregar el espaciado de restricción de superview en Xcode 5

Quiero añadir un «espacio inferior a superview» restricción a mi vista de texto. Dice «espaciado» vecino más cercano, pero no quiero crear una restricción de «vecino más cercano», tengo algo bajo mi vista de texto, y no quiero crear una restricción con que. Si no hay ningún otro objeto bajo mi vista de texto, se agrega una restricción para el contenedor correctamente. Pero si trato de cambiar nada, todo se echa a perder: tengo que mover todos los puntos de vista en algún otro lugar, a continuación, agregar la restricción, a continuación, añadir mover las otras vistas de la espalda. Si puedo añadir una restricción entre la vista de texto y el elemento de interfaz de usuario (un botón, en este caso), no funciona (parece que todo correctamente: botón tiene una restricción de superview la parte inferior, y en la vista texto tiene un espaciado vertical de restricción con el botón, y no hay ningún conflicto de las restricciones). La interfaz de usuario aparecen los elementos de la pantalla de límites en diferentes (3.5 pulgadas) de la pantalla de orientaciones. Hay un bug con el Interface Builder, o me estoy perdiendo algo? Cuando pude configurar todo correctamente, mi controles parecen fuera de los límites cuando se cambia el tamaño de la interfaz del generador de pantallas, pero se muestran correctamente en el simulador o dispositivo de 3,5 pulgadas. ¿Cuál es la «mejor práctica» de diseñar la interfaz de usuario con la nueva Interfaz del Generador de restricciones en Xcode 5?

ACTUALIZACIÓN: estoy teniendo algunos más problemas en otro proyecto con la misma cosa. Estoy tratando de arreglar una vista de la parte superior a la parte superior guía de diseño exactamente con CTRL y arrastrar a mi control donde dice «top guía de diseño», y está tratando de aling el fondo de mi control para el diseño de la guía (sobre -470 puntos) en lugar de la alineando la parte superior de mi control, que no tiene ningún sentido como el control de la disposición en la variable altura de las pantallas (por ejemplo, regular y iPhone de 4 pulgadas, y la existencia de otros posibles diseños en el futuro..). Aquí está una captura de pantalla de lo que está sucediendo:

Agregar el espaciado de restricción de superview en Xcode 5

Y me estoy poniendo esto en las restricciones:

Agregar el espaciado de restricción de superview en Xcode 5

¿Cómo puedo hacer que la Interfaz de Generador de alinear la superior de la vista en la parte superior guía de diseño?

ACTUALIZACIÓN 2: he encontrado una solución. Yo primero cambiar el tamaño de la vista para disminuir su altura (de modo que la parte superior de la misma no se superponen o muy cerca de la parte superior guía de diseño) y LUEGO me CTRL+arrastrar a la parte superior guía de diseño. Parece que funciona correctamente. Después de conectarlo, se cambia el tamaño de mi vista de nuevo al tamaño deseado y seleccione Update Constraints. Funciona, pero aún no es una solución, ya que requiere el tamaño de la vista, conexión, cambio de tamaño de nuevo, y la actualización de las restricciones.

  • Hola, tengo el mismo error como cuando se conecta una vista a la parte Superior Guía de Diseño. Es que me confunde mucho al principio, pero encontró la misma solución como usted. Esperemos que esto será corregido en futuras actualizaciones…
  • Eso espero.. Triste ver a una empresa que realmente se preocupa por el diseño que tiene errores de diseño en su propio producto que se utiliza para el diseño de núcleo de interfaces.
  • Esta solución funciona !

4 Comentarios

  1. 94

    Para agregar una restricción entre una vista y su’ superview (como «espacio inferior a superview»), usted puede usar el Esquema del Documento (la parte izquierda de La Interfaz de Generador).

    En el Esquema del Documento:

    1. Pulsada la tecla ctrl y arrastre desde el punto de vista de su » superview (o viceversa).
    2. Seleccione las limitaciones que desea agregar (en este ejemplo «Espacio Inferior a un Contenedor»).

    Agregar el espaciado de restricción de superview en Xcode 5
    Agregar el espaciado de restricción de superview en Xcode 5

    • Tendría que funcionar, pero si usted quiere poner una restricción entre un botón en una vista y una barra de pestañas debajo de la vista (suponiendo que el botón de la vista está contenida en un tab bar controller)?
    • Si quieres poner un limitan entre un Botón y una Barra de pestañas puede ctrl y arrastre en el Esquema del Documento desde el Botón de la parte Inferior Guía de Diseño.
    • Siempre que se intenta agregar un «espacio para la parte superior guía de diseño» restricción como este, se convierte en un «espacio inferior a la parte superior de» diseño de restricción con un gran valor negativo. Es este un Xcode error, o estoy haciendo algo mal?
    • Se dio cuenta de mi propio problema. La vista estaba por encima de la guía de diseño (porque proviene de iOS 6), por lo que xcode trató de ser inteligente en vez de hacer lo que dijo que iba a hacerlo. La solución consistió en seleccionar todo y arrastre hacia abajo por debajo de la guía de diseño, aunque yo estaba tratando de obtener Xcode para hacerlo automáticamente.
    • Estoy teniendo otro problema con el IB. He añadido una actualización, yo estaría encantado si usted tiene una mirada en ella.
    • Se parece a la Vertical Space restricción entre el Table View y la Top Layout Guide no quiere ser cero o negativo. Aquí es lo que usted puede hacer: 1) Mueva el Table View por lo menos 1 punto, con lo que no es directamente adyacente a la Top Layout Guide. 2) Establecer el Vertical Space restricción entre el Table View y la Top Layout Guide – debe ser de la parte superior ahora. 3) Mueva el Table View de vuelta a la posición que está directamente adyacente a la Top Layout Guide. 4) Fijar el Vertical Space restricciones de valor a cero.
    • GRACIAS!!! Esta ha sido la conducción me encanta!!
    • Jaja, esto es genial. Por qué no hacer esto obvio en la documentación, es obvio que realmente acelera cualquier forma de proceso jaja! Brillante. Gracias por este.

  2. 48

    La respuesta Por Jarig es buena, pero a veces puede conducir a resultados inesperados, como se señaló en los comentarios.

    Otra opción es seleccionar el niño y vaya a:

    Editor > Pin > Espacio para Superview

    o cualquier restricción que desee.

    • Esto es especialmente útil para saber como tratar de conseguir los mismos resultados de los menús contextuales, o control-arrastra nunca la opción de «top espacio para superview» siempre «top espacio superior de la guía de diseño» (Xcode51DP)
    • GRACIAS por este. Como se ha mencionado directamente de arriba, si su padre la vista es el punto de vista de su controlador de vista, Xcode sólo parece querer dar el «Top espacio Superior de la Guía de Diseño», que no siempre lo que desea. Especialmente cuando se trata de controles que automáticamente cuenta para la parte superior, diseño de espacio.
    • Gracias por la alternativa de menú. Hay tres maneras de crear restricciones y que no todos tienen la paridad.
    • es deshabilitar en mi proyecto ¿qué puedo hacer
    • GRACIAS. Me estaba perdiendo una gran parte de mi tiempo tratando de arreglar el margen del formato tableview. Yo sabía que tenía que sujetar la parte superior del espacio de superview. Pero todos los otros aspectos, se han deshabilitado. Usted me salvó la noche, ahora me puedo ir a dormir.
    • Usted puede tratar de seleccionar el componente primero. En mi caso, fue desactivado hasta que he seleccionado UITableView.
    • La maldición del dios de xcode. Incesante pedazo de basura. El menú edición es en realidad el único lugar para establecer correctamente esta, a menos que hacerlo en el código.
    • En realidad, el pequeño menú (primera imagen en la OPs de texto) también funciona. Usted sólo tiene que pagar la atención el texto «vecino más CERCANO»).

  3. 1

    Parece ser el borde inferior de la restricción de ahora.
    Seleccione su punto de vista y su superview, pulse sobre el botón «Alinear» y marque la casilla de «bordes de la parte Inferior» cosita

    Agregar el espaciado de restricción de superview en Xcode 5

    • se desactivar el modo de ¿qué puedo hacer
  4. 0

    Si quieres añadir al principio o final principales limitaciones como en Xcode 4 por favor, pulse CTRL y arrastre desde el centro de la vista a la que desee agregar la restricción a la izquierda, derecha, arriba o abajo. A continuación, se presenta una ventana en la que puede seleccionar la restricción a agregar (dependiendo de la dirección en la que usted CTRL + arrastrar).

Dejar respuesta

Please enter your comment!
Please enter your name here