Body zdarma Java týden
Využij podzimních slev a získej od nás až 40 % bodů zdarma! Více zde
Pouze tento týden sleva až 80 % na Java e-learning!

Lekce 19 - Úvod do uživatelského rozhraní 100 % v kódu s Auto Layout

Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem.
Vydávání, hosting a aktualizace umožňují jeho sponzoři.

V tomto již pokročilejším tutoriálu si ukážeme, jak vytvořit celou aplikaci skrze Swift, tedy kódem bez pomoci Main.storyboard a Interface Builder. Existuje celá řada dobrých důvodů, proč Interface Builder nepoužívat a také řada důvodů, proč ano.

Zvlášť v začátcích je Interface Builder určitě lepší volba. Vaše uživatelské rozhraní vidíte před sebou, můžete propojovat obrazovky vizuálně, vidíte dostupné vlastnosti, nastavené Auto Layout constraints a hromadu dalšího.

Jako opravdovou nevýhodu Interface Builder bych uvedl fakt, že je problém pracovat na aplikaci v týmu. Když bude více členů modifikovat Main.storyboard nebo jakýkoliv jiný storyboard, je velký problém následně změny rozumně sloučit. Můžeme sice používat více storyboard souborů a vyhnout se tak konfliktům, ale když celé UI vytvoříme v kódu, tak přesně vidíme, co kdo změnil a čeho se změna týká.

Kód má pro zkušenější vývojáře rovněž výhodu v tom, že přehledněji vidíme, jaké vlastnosti daných komponent jsme měnili (Interface Builder ukazuje vždy všechny vlastnosti a nemusí být zřejmé, co je výchozí hodnota a co naše). Můžeme komponenty nastavovat hromadně a jsou věci, které Interface Builder neumí. Například různě velké mezery mezi komponentami ve Stack View lze nastavit jen v kódu.

Nebudu zde psát, jaký způsob je lepší a jaký byste měli zvolit. Každý má něco do sebe a je v pořádku používat ten, který vám vyhovuje. Myslím si ale, že bychom měli znát alespoň základy obou přístupů.

Úvod by byl za námi a pustíme se do tvorby aplikace. Výsledek bude zobrazovat náhodné recepty a kromě samotné tvorby UI v kódu si ukážeme řadu dalších vychytávek, jako je Dynamic Type, použití komponenty Scroll View, optimalizace textu pro velké displeje a řadu dalších.

Vytvoření projektu

Tradičně vytvoříme nový iOS projekt podle šablony


 

...konec náhledu článku...

Prémiový článek

Prémiový článek

Na itnetwork.cz se nachází největší a nejucelenější česká databáze s výukovými články, jejímž cílem je umožnit kvalitní vzdělání v oblasti IT úplně každému. Měsíčně zobrazíme k milionu článků a sklidíme desítky děkovných emailů, kde nám sdělujete, že jsme vám pomohli k lepšímu zaměstnání nebo vzdělání.

Ačkoli se snažíme držet většinu obsahu úplně zadarmo, udržovat síť v provozu a aktuální stojí obrovské úsilí. Proto je nějaký obsah, jako cvičení nebo odbornějšíčlánky, přístupný pouze za body. Nebojte, nestojí to skoro nic :)

Popis článku

Požadovaný článek má následující obsah:

Ukážeme si, jak se tvoří celé UI v kódu, včetně Auto Layout constraints. Také si řekneme, proč to může být dobrá volba.

Omezená nabídka: Nauč se vše a ušetři

Koupit články a funkce postupně a po jednom 190 bodů
Koupit celý kurz se všemi články a funkcemi za exkluzivní cenu 162 bodů
Na svém účtu máš aktuálně 0 bodů
Koupí tohoto výhodného balíčku získáš přístup ke všem 30 článkům s kontrolou a certifikací a ještě navíc ušetříš 72 Kč. Nabídka je omezená pouze pro první články z kurzu a obsahuje exkluzivní slevu 15%.
162 bodů získáš za přidání svého článku na síť nebo odpovídá 474 Kč 403 Kč

Koupit pouze tento článek

Pozor, pokud si koupíš pouze tento článek, ztratíš nárok na speciální slevu 15% na balíček všech článků.

Pro přístup k článku potřebuješ 10 bodů
Na svém účtu máš aktuálně 0 bodů
10 bodů získáš za přidání svého článku na síť nebo odpovídá 25 Kč

Koupí článku k němu získáš neomezený přístup a to napořád. Posuneš své znalosti zas kousek dopředu a zároveň nám pomůžeš udržovat celý projekt při životě a pomáhat vám tak k lepší budoucnosti.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Body získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.

Dobít body můžeš okamžitě např.:

Kartou SMS Převodem
Kartou SMS Převodem

 

Článek pro vás napsal Filip Němeček
Avatar
Autor se věnuje vývoji iOS aplikací (občas macOS) či těch webových ve frameworku Django. Twitter: @nemecek_f | GitHub nemecek-filip
Předchozí článek
Animace v iOS a Swift podruhé
Všechny články v sekci
Vyvíjíme iOS aplikace ve Swift
Miniatura
Následující článek
UI 100 % v kódu - První constraints a view debugging
Aktivity (4)