Search code examples
android-layoutandroid-custom-viewandroid-appcompatandroid-actionbar-compat

getSupportActionBar().setCustomView(view, layout); does not cover entire actionbar


I'm trying to set a custom actionbar background but it does not fill up the entire space. it leaves like a 5dp grey actionbar from left side. I used the following:

 android.support.v7.app.ActionBar.LayoutParams layout = new android.support.v7.app.ActionBar.LayoutParams(android.support.v7.app.ActionBar.LayoutParams.FILL_PARENT, android.support.v7.app.ActionBar.LayoutParams.FILL_PARENT);
        getSupportActionBar().setCustomView(view, layout);
        getSupportActionBar().setDisplayShowCustomEnabled(true);

this is my custom actionbar xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="fill_horizontal"
    android:background="@color/actionbar_color"
    ></RelativeLayout>

I have tried different styles but none worked. please help


Solution

  • fixed it by doing:

    //to set same background color on entire actiobar
    getSupportActionBar().setBackgroundDrawable( getResources().getDrawable(R.drawable.actionbar_color));
    
    //to display custom layout with same BG color
    android.support.v7.app.ActionBar.LayoutParams layout = new android.support.v7.app.ActionBar.LayoutParams(android.support.v7.app.ActionBar.LayoutParams.FILL_PARENT, android.support.v7.app.ActionBar.LayoutParams.FILL_PARENT);
            getSupportActionBar().setCustomView(view, layout);
            getSupportActionBar().setDisplayShowCustomEnabled(true);