Všetko o Constraint Layout helpers I.
Mobile
5
 min read
February 10, 2022

Všetko o Constraint Layout helpers I.

Peter Šuly
Peter Šuly
Android developer
LinkedIn Logo

Constraint layout je typom ViewGroup, ktorý umožňuje vytvárať zložité rozloženia s hierarchiou plochých view. Plná sila CL prichádza od jeho helpers.

Group

Najjednoduchšie z ConstraintLayout helpers. Kontroluje viditeľnosť viacerých (alebo jedného) odkazovaných views. Má tendenciu byť užitočný, ak chcete nastaviť viac views do stavu VISIBLE alebo GONE, ale nechcete ich zabaliť do wrapper ViewGroup, aby vaša štruktúra XML mohla zostať nezmenená.

Na odkazovanie na views vo vnútri skupiny možno použiť atribút constraint_referenced_ids.

V nasledujúcom príklade je možné ovládať viditeľnosť textu a tlačidiel nastavením viditeľnosti na Group Helper. Napr.

V prípade, že sa na jeden view odkazuje z viacerých skupín, declaration order XML definuje konečnú viditeľnosť (posledná skupina v XML má posledné slovo).

Layer

Prakticky to isté ako Group helper, ale sú podporovanézmeny prekladu, mierky a rotácie.

Napr. rotácia viacerých views môže vyzerať takto.

Guideline

Neviditeľný helper object pre Constraint Layout (na zariadenísa nikdy nezobrazí).  

Hlavným účelom guideline je umiestniť child of ConstraintLayout  na určité konkrétne miesto (napr. 100 dpi od začiatku obrazovky alebo 25% od dolnej časti obrazovky ...) Guideline môže byť buď vertikálna (nulová šírka, výška nadradeného rozloženia obmedzenia) alebo horizontálna (šírka rozloženia obmedzenia rodiča, nulová výška).

Na definovanie orientácie guideline môžete použiť atribút orientácie.

Najdôležitejšou vlastnosťou guideline je jeho poloha. Guideline je možné umiestniť tromi rôznymi spôsobmi pomocou atribútov layout_constraintGuide_begin, layout_constraintGuide_end a layout_constraintGuide_percent. Ovplyvňuje ich aj orientácia.

Akékoľvek direct child of Constraint Layout môže byť obmedzené na guideline, ale samotná guideline nemôže mať žiadne obmedzenia. Pozíciu guidelines určujú iba uvedené atribúty. Tu je príklad tlačidla umiestneného na 25% od hornej časti obrazovky.

Android Constraintlayout helper Guidline

Barrier

Barrier helper je podobná ako v Guideline. Hlavný rozdiel medzi nimi je v tom, že Barrier je flexibilná. V atribúte constraint_referenced_ids zaberá viac views a vytvára virtual guideline založené na najextrémnejšom pohľade z referenčných views (najextrémnejšie view je najširšie alebo najvyššie view). Ak sa počas behu zmení šírka (alebo výška) najextrémnejšieho pohľadu, barrier sa automaticky posunie podľa nej. Každý Barrier musí mať atribút BarrierDirection.

Android Constraintlayout helper Barrier

Barrier býva užitočná, ak chcete obmedziť pohľad pod (alebo nad, na konci, na začiatku) iných pohľadov. Napr. usecase, keď tlačidlo musí byť pod textViews, bez ohľadu na to, aké sú dlhé. Mali by ste si všimnúť,že môžete obmedziť pohľady na Barrier (na rozdiel od guideline).

Páčil sa Vám tento článok? Nezabudnite si prečítať aj druhú časť o ConstraintLayout helpers a sledovať ma na LinkedIn a dozviete sa viac :)
Potrebujete pomôct s vaším digitálnym produktom? Kontaktujte nás!
hello@goodrequest.com
Do you need help with your digital product? Contact us!
hello@goodrequest.com

Like what you see?
Join our newsletter.

Great! Welcome to newsletter.
Oops! Something went wrong while submitting your email.
High quality content once a month. No spam, we promise.
Your personal data is processed in accordance with our Memorandum on Personal Data Protection.

Páči sa vám náš content?
Odoberajte newsletter.

Great! Welcome to newsletter.
Oops! Something went wrong while submitting your email.
Vaše osobné údaje sú spracované v súlade s našim Memorandom na ochranu osobných údajov.