Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Navbar overlapping last ListView item (Android)

Tags:

enter image description here

My problem is similar to above Image

I am getting this issue in Nexus Devices. I added margin from bottom by getting Bottom Navigation Bar height. But my application is showing extra margin from the bottom on a tablet.

I do not want to change anything in my style file.

Code:-  <android.support.design.widget.CoordinatorLayout     xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:app="http://schemas.android.com/apk/res-auto"     android:id="@+id/main_coordinator_layout"     android:layout_width="match_parent"     android:layout_height="match_parent">      <android.support.design.widget.AppBarLayout         android:id="@+id/clubhouse_bar"         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:fitsSystemWindows="true"         android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">          <android.support.v7.widget.Toolbar             xmlns:android="http://schemas.android.com/apk/res/android"             xmlns:app="http://schemas.android.com/apk/res-auto"             android:id="@+id/clubhouse_toolbar_main"             android:layout_width="match_parent"             android:layout_height="?attr/actionBarSize"             android:minHeight="?attr/actionBarSize"             android:background="@android:color/holo_red_dark"             app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"             app:layout_scrollFlags="scroll|enterAlways">              <TextView                              android:id="@+id/toolbar_title"                 android:layout_width="wrap_content"                 android:layout_height="match_parent"                 android:textAppearance="@android:style/TextAppearance.Holo.Medium.Inverse"                 android:gravity="center"                 android:singleLine="true"                 android:maxLines="1"                 android:paddingLeft="2dp"                 android:ellipsize="end"                 android:textColor="@color/white"                 />           </android.support.v7.widget.Toolbar>      </android.support.design.widget.AppBarLayout>      <ImageView         android:id="@+id/iv_view"         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:src="@drawable/ic_ab_arrowup"/>     <FrameLayout         android:id="@+id/drop_down_overlay_container"         android:layout_width="match_parent"         android:layout_height="match_parent"         android:background="@android:color/white"         android:layout_marginTop="60dp"         android:fitsSystemWindows="true"         app:layout_behavior="@string/appbar_scrolling_view_behavior" /> </android.support.design.widget.CoordinatorLayout> 

The drop_down_overlay_container in this framelayout is where I am showing my Fragment.

like image 883
sharma_kunal Avatar asked Apr 23 '16 12:04

sharma_kunal


1 Answers

Ok the problem is the following, the cardview match parent height is actually the full screen height with top bar. An very easy fix for this is to add:

    android:layout_marginBottom="?attr/actionBarSize" 

like this:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:app="http://schemas.android.com/apk/res-auto"     xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:layout_marginBottom="?attr/actionBarSize"     app:layout_behavior="@string/appbar_scrolling_view_behavior"     tools:context="com.example.jburg.empty.Main22Activity"     tools:showIn="@layout/activity_main22"     android:background="@color/colorAccent"/> 

This works on my emulator nexus 10 tablet. Let me know if this helps you otherwise I'll keep searching :)

like image 196
jobbert Avatar answered Oct 20 '22 20:10

jobbert