2017-05-12 2 views
0

Ich bin ein totaler Noob wenn es um Xcode geht (Ich habe vor ein paar Tagen mit dem Experimentieren angefangen). Die AutoLayout-Funktionalität bringt mich um.Buttons Breite Ausgabe Xcode

Ich habe zwei Schaltflächen auf einer Reihe von ViewControllern, die Verknüpfung zwischen Seiten in meiner App. Ich möchte, dass die Schaltflächen entweder unten auf dem iOS-Gerät (mit Einschränkungen) oder in jeder unteren Ecke zentriert sind. Die Tastenbreite wird jedoch abgeschnitten, so dass zwischen dem Text und dem Rand der Schaltfläche kein Leerzeichen bleibt.

Hole 1 (centered buttons)

Hole 1 (simulator view)

Wie Sie die gewünschte Dimension der Tasten sehen können, stimmt nicht mit den tatsächlichen Abmessungen.

Hole 2 (bottom corner buttons)

Hole 2 (simulator view)

auch hier die Tasten verhalten sich nicht wie ich sie will. Idealerweise befinden sich die Tasten in den unteren Ecken des Displays, unabhängig davon, welches iOS-Gerät (iPhone, iPad usw.) es ist.

Eine Lösung für beide würde ausreichen, da das endgültige Layout einheitlich sein wird. Dies sind nur meine beiden Versuche, eine Lösung ohne Erfolg zu haben.

Bearbeiten: Dies ist der ViewController für den Rest meiner Seiten. Ich möchte, dass die Anzeige jedes iOS-Geräts diesem ähnelt. Für diese Seite gibt es keine Einschränkungen. Im Wesentlichen habe ich gerade die Knöpfe zu den unteren Eckrändern geschnappt.

Desired look

simulator view

Zweite Edit:

Was ich das Problem zu beheben tun am Ende wurde eine Höhe und Breite Einschränkung zusammen mit Zwangs zu Boden und die Seitenränder einstellen. Ich weiß nicht, warum dies anders war als das, was ich vorher versucht hatte (abgesehen von den Einschränkungen für Höhe und Breite). Danke an diejenigen, die Vorschläge gemacht haben.

+0

Konnten Sie eine Zeichnung von dem, was Sie wollen, und/oder einen Screenshot der Einschränkungen, die Sie in Interface Builder angewendet haben? – Linuxios

+0

Edit für gewünschtes Aussehen hinzugefügt. –

Antwort

1

Erstellen Sie eine Übersicht und benennen Sie sie als Knopfhalter.Beschränken Sie diese Ansicht mit den folgenden Einschränkungen:

- Bottom constraint 
- If you want to give this a fixed width, give a width constraint. 
- Else give leading and trailing 
- Give height constraint 

jetzt zwei Knöpfe zu dieser Ansicht hinzufügen, und fügen Sie wählen die beiden Tasten auf einmal, und fügen Sie die folgenden Einschränkungen:

- Leading 
-trailing 
- top 
-bottom 

Sie können auch dies erreichen, indem UIStackViews mit, die den Abstand Griffe Proeprly in dieser Art von Layouts!

1

Ich bin nicht sicher, ob ich ganz verstanden, was Sie versuchen zu erreichen, aber es scheint, dass die folgende wäre am einfachsten:

beide Tasten auswählen und betten sie in einem UIStackView (Editor> Embed In> StackView)

Wählen Sie dann die Stapelansicht und zentrieren Sie sie in der Superview und fügen Sie eine Beschränkung für den Raum nach unten.

Konfigurieren Sie die Füll- und Verteilungseinstellungen der Stapelansicht und verwenden Sie den Abstand, um die Schaltflächen zu trennen.