Unity GUI layout group
that makes children respect the Safe Area.
It drives direct children's anchors while in Play Mode and supports LayoutElement.ignoreLayout
.
- Fully integrated with Unity GUI's layout system: only rebuilds the layout when needed, no
Update
method or coroutines attached - Does not resize it's own
RectTransform
, so it can be used in objects with aCanvas
component directly - Does not demand a full screen
RectTransform
: the script detects where your rect overlaps with the Safe Area and updates accordingly - Ignore children using a
IgnoreSafeArea
component orLayoutElement
withIgnore Layout
marked as true. Useful for background images, for example. - Preview Safe Area adjustments in Editor using any of the Preview Modes in
SafeAreaLayoutGroup
's inspector while hovering theHover to Preview Layout
button or while in Play Mode. All Preview Modes support both portrait and landscape resolutions.Screen.safeArea
Preview Mode is only applied when using Unity's Device Simulator (in Unity 2020 and older, available as an UPM package) - Only affects canvases in either
Screen Space - Overlay
orScreen Space - Camera
modes, soWorld Space
canvases are ignored
Either:
-
Install using openupm:
openupm add com.gilzoide.safe-area-layout
-
Install via Unity Package Manager using the following git URL:
https://github.com/gilzoide/unity-safe-area-layout.git#1.0.2
-
Clone this repository directly to your
Packages
folder or anywhere inside your project'sAssets
.
A sample scene is available at Samples~/SimpleSample.
- Add the SafeAreaLayoutGroup script anywhere in your UI hierarchy, even objects with
Canvas
components are supported. Direct children will have their anchors driven while the script is enabled. - (optional) Select the Safe Area edges that your layout group will respect.
- (optional) Make specific children be ignored by the layout group by adding the
IgnoreSafeArea
component to them. Alternatively, useLayoutElement
components with theIgnore Layout
flag marked as true. - (optional) Use one of the Preview Modes while in editor to preview the adjustments.
Preview is applied on Play Mode and while hovering the
Hover to Preview Layout
button in theSafeAreaLayoutGroup
's inspector. - Play the game (play the game, everybody play the gaaaame)
- Enjoy 🍾