Ich verwende Größenklassen, um ein Storyboard zu erstellen, das auf die verschiedenen Bildschirmgrößen und -ausrichtungen ausgerichtet ist. Ich habe in der Größenklasse Any Width-Any Height gearbeitet. Ich stieß auf ein Problem mit der Anzeige und entschloss mich, diese Änderungen in der Größenklasse "Compact Width - Regular Height" vorzunehmen. Zu einem späteren Zeitpunkt konnte ich mein Layout-Problem lösen, indem ich bedingte Änderungen an der Größenklasse Any Width-Any Height vornahm. Wie kann ich die an der Größenklasse Kompaktbreite - Reguläre Größe vorgenommenen Änderungen rückgängig machen, sodass die Größenklasse Any Width - Any Height zur Laufzeit verwendet wird, ohne die Änderungen manuell rückgängig zu machen?
Ich hatte ein ähnliches Problem, bei dem ich ein paar Einschränkungen für das iPad in der falschen Größenklasse (Any Width - Regular Height anstelle von Regular Width - Regular Height) bearbeitet habe und das Layout für das iPhone im Porträt durcheinander gebracht hat. Ich bearbeite Base.lproj/Main.storyboard
und ändere die entsprechenden <variation>
Einträge, um die Einschränkungen in die richtige Größenklasse zu verschieben (in meinem Fall von <variation key="heightClass=regular" ..>
nach <variation key="heightClass=regular-widthClass=regular ...>
. Es muss einen besseren Weg geben, dies zu tun, aber dies quick hack löste mein Problem bei dieser Gelegenheit. Um Variationen zu entfernen, sollte das Löschen der entsprechenden Variationseinträge funktionieren (aber stellen Sie sicher, dass Sie eine Sicherungskopie haben, falls etwas schief geht).
XCODE7 ...
Ich hatte ein ähnliches Problem mit Bildern, die hinzugefügt wurden, während die normale Breite (statt "Irgendwelche") nicht angezeigt wurde, als ich sie wieder auf "wAny hAny" Größe umstellte.
Ich habe in der Main.storyboard-Datei einen Abschnitt für die fragliche Ansicht gefunden, der als Code und nicht als visuell betrachtet wird:
%Vor%Es scheint, dass der Abschnitt sich auf den "Any-Any" -Fall bezieht und sich auf die spezifische Größenklasse bezieht, mit der ich gespielt habe (reguläre Breite, beliebige Höhe).
Um es zu beheben, löschte ich die Elemente aus dem Standard-Abschnitt ausgeschlossen, und löschte diese gleichen Einträge, die zum regulären Abschnitt hinzugefügt worden waren. Dieser Abschnitt des Codes sieht dann aus wie ...
%Vor%Scheint, es zu reparieren. Whacky, was?
Tags und Links ios xcode autolayout uistoryboard size-classes