Layout Editor: wat is het, Android Studio en layouts maken

Auteur: IT Sectr Gepubliceerd: 2026-02-12 Leestijd: 10 min

Layout Editor — de visuele XML-layouteditor in Android Studio waarmee u interfaces voor Android-apps kunt maken zonder handmatig code te schrijven. We bespreken wat het is, hoe te werken met ConstraintLayout en LinearLayout, het gebruik van het componentenpalet en het configureren van attributen via het Properties Panel.

Belangrijkste punten

  • Layout Editor — visuele interface voor het maken van Android XML-layouts in Android Studio met Drag-and-Drop en realtime voorbeeldweergave
  • ConstraintLayout — basislayout die een platte hiërarchie creëert met flexibele bindingen (constraints) tussen elementen
  • LinearLayout — container voor lineaire plaatsing van widgets horizontaal of verticaal met gewichtsverdeling
  • Blueprint en Design — twee weergavemodi: schema met constraints en visuele voorbeeldweergave van de layout
  • Properties Panel — paneel voor het configureren van alle attributen van het geselecteerde component zonder naar XML te schakelen

Wat is de Layout Editor?

Layout Editor — het in Android Studio ingebouwde hulpmiddel voor het visueel ontwerpen van gebruikersinterfaces voor Android-apps. Het wordt geopend door te dubbelklikken op het XML-layoutbestand in de map res/layout/ en is toegankelijk via het onderste paneel voor schakelen tussen de tabbladen Code, Design en Split. De ontwikkelaar kan componenten van het palet naar het canvas slepen, hun eigenschappen configureren en wijzigingen in realtime bekijken.

Het hulpmiddel ondersteunt twee weergavemodi: Design (visueel canvas met echte weergave van widgets) en Blueprint (schematische weergave met constraints en grenzen). De Split-modus toont gelijktijdig XML-code en het visuele canvas. Schakelen ertussen gebeurt met de knoppen linksboven in de editor.

De Layout Editor genereert automatisch XML-code voor elke gebruikersactie: toevoegen van een element, configureren van marges, maken van een constraint. Hierdoor hoeft de ontwikkelaar tientallen XML-attributen niet te onthouden en kan hij zich concentreren op het visuele resultaat. De gegenereerde code kan altijd handmatig worden bewerkt op het tabblad Code.

ModusBeschrijvingSneltoets
DesignVisueel canvas met echte componentenShift + D
BlueprintSchema met constraints en grenzenShift + B
SplitXML-code en canvas gelijktijdigShift + S

Hoofdzones van de Layout Editor

De interface van de Layout Editor is verdeeld in vier zones: Palette (componentenpalet), Component Tree (componentenboom), Design Surface (ontwerpcanvas) en Properties Panel (eigenschappenpaneel). Het Palette bevat alle beschikbare Android SDK-widgets, gegroepeerd in categorieën: Widgets, Text, Buttons, Containers en andere. De Component Tree toont de layouthiërarchie in de vorm van een boom, waarmee elementen tussen containers kunnen worden gesleept.

Design Surface — het centrale deel van de editor waar de layout wordt weergegeven. Op het canvas kunnen elementen worden geselecteerd, verplaatst, van formaat veranderd en kunnen constraints worden gemaakt. Onderaan het canvas is een schakelaar voor apparaten en oriëntatie beschikbaar voor voorbeeldweergave van de layout op verschillende schermen. De Layout Editor ondersteunt voorbeeldweergave op meerdere virtuele Nexus-, Pixel- en Samsung-apparaten.

Properties Panel toont de attributen van het geselecteerde element: layout_width, layout_height, marges, padding, zwaartekracht en alle specifieke attributen zoals textSize voor TextView. Elke wijziging in het Properties Panel wordt direct op het canvas weergegeven en genereert de bijbehorende XML-code.

Linksboven in de editor bevinden zich de bedieningsknoppen: selectie van de weergavemodus, inschakelen van automatische verbinding van constraints (Autoconnect), weergave van constraints als lijnen en schakelen tussen virtuele apparaten. De knop «Device for Preview» maakt het mogelijk een smartphone-, tablet- of Android TV-model te selecteren om de aanpasbaarheid te controleren.

ConstraintLayout: flexibele positionering

ConstraintLayout — de basislayout, aanbevolen door Google voor alle nieuwe Android-projecten. In tegenstelling tot geneste LinearLayouts creëert ConstraintLayout een platte hiërarchie waarbij elk element is gebonden aan de ouder, andere elementen of richtlijnen (guidelines). Dit vermindert de nestdiepte en verbetert de weergaveprestaties.

Elk element in ConstraintLayout heeft zijdelingse constraints: app:layout_constraintStart_toStartOf, app:layout_constraintEnd_toEndOf, app:layout_constraintTop_toTopOf, app:layout_constraintBottom_toBottomOf. Constraints kunnen worden gebonden aan de ouder (parent) of aan het ID van een ander element. Het basis XML-sjabloon ziet er als volgt uit:

xml



    

In dit voorbeeld is TextView gecentreerd ten opzichte van alle vier zijden van de ouder. De grootte 0dp (match_constraint) betekent dat de breedte zich uitstrekt van de linker- tot de rechterconstraint. Deze benadering maakt het mogelijk adaptieve layouts te maken zonder vaste afmetingen.

ConstraintLayout ondersteunt ook Bias — verschuiving van het midden van een element. De attributen layout_constraintHorizontal_bias en layout_constraintVertical_bias accepteren waarden van 0 tot 1, waarbij 0.5 het midden is, 0 — tegen het begin aan, 1 — tegen het einde aan. Bias maakt nauwkeurige positionering van een element tussen twee constraints mogelijk.

Extra mogelijkheden van ConstraintLayout: Guidelines (richtlijnen in procenten of dp), Barriers(barrières die meerdere elementen combineren) en Chains (kettingen van elementen met ruimteverdeling). Al deze elementen worden direct in de Layout Editor gemaakt via het contextmenu op het canvas.

LinearLayout: lineaire plaatsing

LinearLayout — een container die onderliggende elementen opeenvolgend horizontaal (android:orientation="horizontal") of verticaal (android:orientation="vertical") plaatst. Dit is de eenvoudigste layout om te begrijpen, maar creëert een geneste hiërarchie bij complexe layouts, wat de prestaties kan verminderen.

Het belangrijkste attribuut van LinearLayout is weight (android:layout_weight). Het maakt het mogelijk de vrije ruimte tussen elementen proportioneel te verdelen volgens de opgegeven waarden. Als twee knoppen weight="1" krijgen, nemen ze een gelijke breedte in. Een element met weight="2" krijgt twee keer zoveel ruimte als een element met weight="1". Voorbeeld XML met LinearLayout:

xml


    

    

    

In dit voorbeeld krijgt EditText layout_weight="1" en neemt het alle vrije ruimte tussen labelName en btnSubmit in beslag. layout_width="0dp" geeft aan dat de breedte van EditText volledig door weight wordt bepaald. Zonder weight zouden we een vaste breedte moeten instellen, wat zich niet aanpast aan verschillende schermen.

Belangrijke kenmerken van LinearLayout: android:gravity regelt de uitlijning van de inhoud binnen de container, en android:layout_gravity regelt de uitlijning van de container zelf binnen de ouder. LinearLayout met geneste LinearLayouts is een veelvoorkomende oorzaak van diepe nesting, daarom raadt Google aan dergelijke constructies te vervangen door ConstraintLayout.

XML-code: interne structuur van de layout

Elke Android-layout is een XML-bestand in de map res/layout/. De Layout Editor genereert dit bestand automatisch, maar het begrijpen van de structuur is noodzakelijk voor handmatige optimalisatie. Het root-element bepaalt het type container (ConstraintLayout, LinearLayout, FrameLayout), waarbinnen de onderliggende widgets zich bevinden.

Het basis XML-sjabloon met ConstraintLayout bevat de declaratie van de naamruimten xmlns:android en xmlns:app. De naamruimte app wordt gebruikt voor attributen van de ConstraintLayout-bibliotheek, zoals layout_constraintStart_toStartOf. Het wordt aanbevolen elk element een android:id te geven voor verwijzingen vanuit andere elementen en vanuit de code van Activity of Fragment.

Voorbeeld van een layoutfragment met meerdere elementen en constraints:

xml


    

    

    

In deze layout is ImageView aan de bovenkant van de ouder gebonden en horizontaal gecentreerd. TextView is gebonden aan de onderkant van ImageView (Top_toBottomOf). Button bevindt zich onder TextView. Deze ketting van constraints creëert een sequentiële structuur zonder geneste LinearLayouts.

De Layout Editor maakt schakelen tussen visuele en tekstuele weergave mogelijk via de tabbladen Design / Code / Split. In de Split-modus worden wijzigingen in XML direct op het canvas weergegeven en vice versa. Dit is vooral handig bij het fijn afstellen van attributen die geen visuele controle op het canvas hebben.

Componentenpalet en Properties Panel

Palette — het linkerpaneel van de Layout Editor dat alle beschikbare UI-componenten bevat: TextView, Button, ImageView, EditText, ProgressBar, RecyclerView en andere. Componenten zijn gegroepeerd in categorieën: Widgets, Text, Buttons, Containers, Transitions, Advanced. Om een component aan het canvas toe te voegen, sleept u het eenvoudigweg van het palet naar de Design Surface.

Properties Panel (rechterpaneel) toont alle attributen van het geselecteerde element. Het paneel is verdeeld in secties: Id (identificatie), Layout (afmetingen en marges), Transform (rotatie en schaal), Text (inhoud van TextView), Padding and Margin. Voor elk attribut is een vervolgkeuzemenu beschikbaar met opties: wrap_content, match_parent, match_constraint (0dp).

Een bijzondere eigenschap van het Properties Panel is de visuele afstandseditor (padding en margin) met grafische weergave. Door op het getal naast de betreffende pijl te klikken, kunt u de afstand wijzigen met behulp van een schuifregelaar. De Layout Editor normaliseert automatisch afstanden: als alle vier de afstanden gelijk zijn, wordt het attribuut android:layout_margin gebruikt, anders — individuele android:layout_marginStart, android:layout_marginTop enzovoort.

Voor het bewerken van Constraint-attributen in het Properties Panel is er een speciale sectie Constraints. Hier worden alle bindingen van het element weergegeven: aan welke zijde van de ouder of een ander element elke rand is gebonden. U kunt het type binding wijzigen, een constraint toevoegen of verwijderen. Het verwijderen van een constraint kan ook door op de betreffende lijn op het canvas te klikken in de Blueprint-modus.

CategorieComponentenVoorbeeldattributen
WidgetsTextView, ImageView, ProgressBartextSize, src, max
TextEditText, AutoCompleteTextViewhint, inputType, imeOptions
ButtonsButton, ImageButton, ToggleButtontext, onClick, backgroundTint
ContainersCardView, ScrollView, RecyclerViewcardCornerRadius, clipToPadding
AdvancedWebView, MapView, VideoViewloadUrl, zOrderOnTop

Adaptieve layouts maken

Een adaptieve layout is een layout die correct wordt weergegeven op verschillende schermformaten: van compacte telefoons (320dp) tot grote tablets (600dp+) en opvouwbare apparaten. De Layout Editor biedt verschillende hulpmiddelen voor het controleren en maken van adaptieve interfaces.

Het eerste hulpmiddel — Device for Preview in de werkbalk. Het vervolgkeuzemenu bevat populaire apparaten: Pixel 6, Pixel 9, Samsung Galaxy S25, Nexus 7, Nexus 9, Pixel C en andere. U kunt een aangepast apparaat toevoegen met willekeurige schermafmetingen en pixeldichtheid (dpi). Het schakelen tussen apparaten duurt een seconde en laat zien hoe de layout er op elk scherm uitziet.

Het tweede hulpmiddel — formaatkwalificatoren (qualifiers) voor het maken van alternatieve layouts. In de Layout Editor kunt u meerdere versies van hetzelfde XML-bestand maken voor verschillende schermformaten, oriëntaties of dichtheden. Bijvoorbeeld het bestand activity_main.xml voor telefoon en activity_main-sw600dp.xml voor tablet. De Layout Editor toont automatisch een voorbeeld voor de actieve kwalificator.

De derde benadering — ConstraintLayout met Guidelines in procenten. Richtlijnen met het attribuut app:layout_constraintGuide_percent maken het mogelijk elementen aan procentuele posities te binden. Bijvoorbeeld, een guideline op 50% verdeelt het scherm in tweeën, ongeacht de grootte van het apparaat. Dit is de meest flexibele manier om adaptieve layouts te maken zonder XML-bestanden te dupliceren.

De Layout Editor toont ook waarschuwingen over aanpasbaarheidsproblemen: gele driehoeken op elementen met vaste breedte, te grote afbeeldingen of niet-optimale nesting. De ontwikkelaar kan op de waarschuwing klikken en een aanbeveling voor correctie krijgen.

XML-layouts optimaliseren

Het optimaliseren van layouts heeft directe invloed op de weergavesnelheid en de vloeiendheid van de app. De Layout Editor helpt problemen te detecteren via de ingebouwde Layout Inspector en waarschuwingen in het paneel Problems. De belangrijkste optimalisatieregels: minimaliseren van nesting, gebruik van ConstraintLayout in plaats van geneste LinearLayouts, correcte keuze van formaatattributen.

Nestdiepte — de grootste vijand van prestaties. Elke geneste container verhoogt de meet- en tekentijd. Het hulpmiddel Hierarchy View in Android Studio toont de layouthiërarchie. Als de diepte meer dan 5–6 niveaus bedraagt, moet de layout worden geherstructureerd. ConstraintLayout lost dit probleem op door 3–4 nestniveaus te vervangen door één platte container.

Aanbevelingen voor het optimaliseren van XML-layouts in de Layout Editor:

  • Gebruik ConstraintLayout als root-container in plaats van geneste LinearLayouts — dit vermindert de hiërarchiediepte en versnelt de weergave
  • Vermijd layout_weight in LinearLayout bij grote lijsten — weight vereist een dubbele meetpassage (two-pass layout)
  • Verwijder ongebruikte constraints via het contextmenu Clear Constraints of Selection in de Layout Editor
  • Gebruik ViewStub voor zelden weergegeven blokken — ViewStub stelt de inflatie uit tot het moment van zichtbaarheid
  • Merge voor herbruikbare componenten — de merge-tag elimineert de overbodige container bij opname via include
  • Verklein de afmetingen van afbeeldingen en gebruik VectorDrawable in plaats van PNG voor pictogrammen

Layout Inspector — het hulpmiddel van Android Studio voor het profileren van layouts tijdens de uitvoering van de app. Het toont de werkelijke hiërarchie, de meet- en tekentijd van elk component. De Layout Editor is geïntegreerd met Layout Inspector: dubbelklikken op een waarschuwing opent het betreffende probleem in een gedetailleerd rapport.

Veelgestelde vragen

Wat is de Layout Editor in Android Studio?

Layout Editor — de visuele XML-layouteditor die is ingebouwd in Android Studio. Het maakt het mogelijk de UI van Android-apps te maken door componenten naar het canvas te slepen, attributen te configureren via het eigenschappenpaneel en het resultaat in realtime te bekijken. De modi Design, Blueprint en Split dekken alle fasen van de layoutontwikkeling.

Welke layout is beter: ConstraintLayout of LinearLayout?

ConstraintLayout wordt door Google aanbevolen voor nieuwe projecten vanwege de platte hiërarchie en flexibele constraints. LinearLayout is alleen gerechtvaardigd voor eenvoudige lineaire secties met 2–3 elementen zonder nesting. In één layout kunnen beide benaderingen worden gecombineerd, met ConstraintLayout als root-container.

Hoe voeg ik een constraint toe in de Layout Editor?

Plaats in de Design-modus de cursor op het cirkeltje aan de rand van het element (voor ConstraintLayout). Houd de linkermuisknop ingedrukt en sleep de lijn naar de ouder of een ander element totdat een haakje (snap) verschijnt. Gebruik voor numerieke configuratie van marges het Properties Panel, sectie Constraints. Constraints worden ook automatisch gemaakt wanneer Autoconnect is ingeschakeld.

Waarom toont de Layout Editor gele waarschuwingen?

Gele waarschuwingen duiden op mogelijke problemen: niet-optimale prestaties (diepe nesting, vaste afmetingen), ontbrekende contentbeschrijving voor toegankelijkheid, hardgecodeerde tekenreeksen in plaats van strings.xml-bronnen. Elke waarschuwing bevat een aanbeveling voor correctie. De Layout Editor markeert elementen met problemen ook rood als de fout kritiek is.

Hoe controleer ik de layout op verschillende schermen?

Gebruik het vervolgkeuzemenu Device for Preview in de werkbalk van de Layout Editor. Selecteer een willekeurig apparaat uit de lijst of voeg een aangepast apparaat toe met willekeurige afmetingen. Maak voor het controleren van de aanpasbaarheid alternatieve layouts met kwalificatoren (sw600dp, sw720dp) en schakel ertussen via dezelfde lijst. Layout Inspector op een echt apparaat toont het uiteindelijke resultaat.

Samenvatting

  • Layout Editor — visuele XML-layouteditor in Android Studio met de modi Design, Blueprint en Split
  • ConstraintLayout — primaire container met platte hiërarchie, constraints en ondersteuning voor Bias, Chains, Guidelines
  • LinearLayout — lineaire plaatsing van elementen met gewichtsverdeling, geschikt voor eenvoudige secties
  • Palette en Properties Panel — slepen en neerzetten van componenten en visuele configuratie van alle layoutattributen
  • Aanpasbaarheid — voorbeeldweergave op verschillende apparaten, kwalificatoren en procentuele Guidelines
  • Optimalisatie — minimaliseren van nesting, ConstraintLayout in plaats van geneste LinearLayouts, Layout Inspector
  • XML-code wordt automatisch gegenereerd en is beschikbaar voor handmatige bewerking op het tabblad Code

We ontwikkelen een mobiele applicatie turnkey

IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.

Bespreek het project

Lees ook