Android: remove left margin from actionbar's custom layout Android: remove left margin from actionbar's custom layout xml xml

Android: remove left margin from actionbar's custom layout


If you are adding the Toolbar via XML, you can simply add XML attributes to remove content insets.

<android.support.v7.widget.Toolbar    xmlns:app="schemas.android.com/apk/res-auto"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:background="@color/primaryColor"    android:contentInsetLeft="0dp"    android:contentInsetStart="0dp"    app:contentInsetLeft="0dp"    app:contentInsetStart="0dp"    android:contentInsetRight="0dp"    android:contentInsetEnd="0dp"    app:contentInsetRight="0dp"    app:contentInsetEnd="0dp" />


try this:

    ActionBar actionBar = getSupportActionBar();    actionBar.setDisplayShowHomeEnabled(false);    actionBar.setDisplayShowCustomEnabled(true);    actionBar.setDisplayShowTitleEnabled(false);    View customView = getLayoutInflater().inflate(R.layout.main_action_bar, null);    actionBar.setCustomView(customView);    Toolbar parent =(Toolbar) customView.getParent();    parent.setPadding(0,0,0,0);//for tab otherwise give space in tab    parent.setContentInsetsAbsolute(0,0);

I used this code in my project,good luck;


The left inset is caused by Toolbar's contentInsetStart which by default is 16dp.

Change this to align to the keyline.

Update for support library v24.0.0:

To match the Material Design spec there's an additional attribute contentInsetStartWithNavigation which by default is 16dp. Change this if you also have a navigation icon.

It turned out that this is part of a new Material Design Specification introduced in version 24 of Design library.

https://material.google.com/patterns/navigation.html

However, it is possible to remove the extra space by adding the following property to Toolbar widget.

app:contentInsetStartWithNavigation="0dp"

Before :enter image description here

After :enter image description here