What are insets in android?
Asked Answered
I

1

41

I am beginner at android development. I was recently looking at someone else's code and found some functions view.onApplyWindowInsets(windowInsets), windowInsets.getSystemWindowInsetTop(). And this word was used frequently in the same app.

I tried googling it and found InsetDrwable class with explanation

A Drawable that insets another Drawable by a specified distance. This is used when a View needs a background that is smaller than the View's actual bounds.

Can some one explain me what is the meaning on Insets and what those piece of code up there meant?

A explanation with an example will be appreciated.

Inedible answered 27/7, 2016 at 19:15 Comment(0)
T
61

Suppose you have a TextView and you need to add a background to the TextView. But, on the other hand, you don't want the background to scan the entire View (TextView), therefore, you need to use Insets.

A Drawable that insets another Drawable by a specified distance or fraction of the content bounds. This is used when a View needs a background that is smaller than the View's actual bounds.

The background can be a Drawable. Hence you need to use the <inset> attribute inside your xml file (activity_main.xml) "For Example".

Then, after using the <inset> tag, you can specify some attributes such as:

<inset
    android:drawable="@drawable/(Enter the file name under drawable)"
    android:insetBottom="4dp"
    android:insetTop="4dp"/>

For more information please have a look at InsetDrawable on Android developer.com

Hope this helps!

Treillage answered 12/10, 2016 at 7:4 Comment(1)
here's a practical example of insets being usedCaylacaylor

© 2022 - 2024 — McMap. All rights reserved.