2017-10-20 2 views
0

Sagen wir, ich möchte kein UIStoryboard in meiner App verwenden. Apple Plätze UIStoryboards hart und sie bieten auch die Möglichkeit für UIStoryboards, damit Sie eine universelle App mit Leichtigkeit erstellen können.iOS App ohne Storyboard (Größenklassen und Gerätetypeinschränkungen)

Ich möchte dies jedoch nicht tun. Also, ohne meine lange Liste von Gründen aufzulisten, ist meine erste Frage:

Ist es klug/akzeptabel, Storyboards zu entfernen?

Sekunde. Sagen wir, ich möchte Sachen wie Gerätetyp überprüfen, um Entscheidungen darüber zu treffen, welche UI angezeigt werden soll. I can find plenty of UIDevice extensions, die dies mit einer Einschränkung zulassen. Wenn Sie diese Erweiterungen auf einem Simulator verwenden, können Sie nicht wissen, was der Simulator simuliert. Daher ist das Testen Ihrer App im Simulator keine Option mehr.

Abschließend möchte ich sagen, dass ich die Größenklassen-APIs verwendet habe, die Apple bietet, um UI-Code-Entscheidungen ohne eine UIStoryboard zu treffen. Gibt es eine Möglichkeit, einen Verweis auf diese Größenklassen zu erhalten? Die Klassen scheinen nur auf UIView zu sein und sind nicht verfügbar, wenn Sie bei App-Start Entscheidungen auf Fensterebene treffen.

+0

Verwenden Sie keine dieser UIDevice-Erweiterungen. Basieren Sie Ihr Layout auf der Ansichtsgröße. Dadurch kann Ihre App auf jedem Gerät und auf allen neuen Bildschirmgrößen ohne Updates ausgeführt werden, und Ihre App unterstützt Multitasking auf iPads. – rmaddy

Antwort

1

Ist es schlau/akzeptabel, Storyboards zu entfernen?

Sicher. Der Aufbau Ihrer Benutzeroberfläche entweder im Code- oder im Schnittstellen-Builder liegt wirklich bei Ihnen, im Team oder im Unternehmen. Wenn das nur Ihre Frage ist, wäre dieser Thread geschlossen, da dies auf Meinungen basiert. In Ihrer zweiten Frage glaube ich nicht, dass das eine Frage ist.

Wie für Ihre letzte Frage, versuche ich, diese Frage zu beantworten, obwohl ich es nicht vollständig verstehe. Vielleicht würde das helfen: https://developer.apple.com/documentation/uikit/uitraitcollection

Und autolayout sollte die Antwort darauf sein.

+0

Danke Glen. 'UITraitCollection' ist was ich gesucht habe. –

+0

Schön! Bitte. :) – Glenn

Verwandte Themen