FrameLayout vs RelativeLayout voor overlays

Ik moet een overlay (doorschijnend) scherm voor mijn app implementeren, iets wat lijkt op Showcase View

Mijn gok was om FrameLayoutte gebruiken voor deze usecase, omdat het wordt gebruikt om items op elkaar te stapelen. Maar ik was verrast om te zien dat de bovenstaande bibliotheek RelativeLayoutgebruikt.

Mijn vraag is wanneer ik dan FrameLayoutmoet gebruiken, zo niet in dit soort gevallen? Wat zijn de nadelen als ik de FrameLayout-manier volg?


Antwoord 1, autoriteit 100%

Een algemene vuistregel bij het kiezen van lay-outs is om de combinatie te selecteren die resulteert in het kleinste aantal geneste lay-outweergaven.

Specifiek voor uw vraag: RelativeLayout is groter en capabeler dan de veel eenvoudigere FrameLayout. Dus voor eenvoudige lay-outs is de laatste waarschijnlijk efficiënter. Maar als u met RelativeLayout en de toegevoegde positioneringsopties uw GUI in een kleiner aantal lay-outweergaven kunt implementeren, dan is dat waarschijnlijk een betere keuze.

Hier is een paginadie enkele afwegingen en demonstreert enkele handige hulpmiddelen die u kunt gebruiken bij het ontwerpen van uw lay-outs. Het gaat vooral over RelativeLayout en LinearLayout, maar is ook geschikt voor uw keuze tussen RelativeLayout en Framelayout. Houd er rekening mee dat FrameLayout een nog eenvoudigere lay-out is.

Bewerken (2017): voor nog ingewikkeldere lay-outs kunt u geneste lay-outs mogelijk vermijden door ConstraintLayout te gebruiken.

Other episodes