Content going behind Navigation Bar Content going behind Navigation Bar android android

Content going behind Navigation Bar


Here is the solution.

Most of the layouts get solved by adding these properties in value-21 style.xml

    <item name="android:windowTranslucentStatus">true</item>    <item name="android:windowTranslucentNavigation">true</item>    <item name="android:fitsSystemWindows">true</item>

for others, I have calculated the hight of navigation bar and add margin to my view .

 public static int getSoftButtonsBarSizePort(Activity activity) {// getRealMetrics is only available with API 17 and +if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {    DisplayMetrics metrics = new DisplayMetrics();    activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);    int usableHeight = metrics.heightPixels;    activity.getWindowManager().getDefaultDisplay().getRealMetrics(metrics);    int realHeight = metrics.heightPixels;    if (realHeight > usableHeight)        return realHeight - usableHeight;    else        return 0;}return 0;}


android:fitsSystemWindows="true"

This worked for me. The view no longer overlaps with soft navigation.


I don't have a off-the-shelve solution, but this might be of help. The activity_main.xml root element states it should fit the system window: android:fitsSystemWindows="true".

I guess you'll have to find a way to detect whether the bottom navbar is on screen, and if true, add extra margin-bottom to your activity layout.