ActionBar с пользовательским макетом не занимает полную ширину экрана на Android 4.4.2 (KitKat)

Я хочу отобразить панель действий с настраиваемой компоновкой. Пользовательский макет имеет три ImageViews, один в центре и два других слева и справа от панели действий. Не должно быть кнопок возврата или действий.

Вот что я использовал:

android.support.v7.app.ActionBar actionBar = getSupportActionBar();

actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setDisplayUseLogoEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);

ActionBar.LayoutParams lp = new ActionBar.LayoutParams(ActionBar.LayoutParams.MATCH_PARENT, ActionBar.LayoutParams.MATCH_PARENT);
View actionBarView = LayoutInflater.from(this).inflate(resource, null); 
actionBar.setCustomView(actionBarView, lp);

Пользовательский макет завышен правильно, , но не занимает полную ширину экрана. Это происходит на Android 4.4.2 (KitKat). На Gingerbread вышеуказанное устройство работает правильно.

Я пробовал рекомендуемые решения в следующих обсуждениях:

Однако проблема остается. Должен быть способ заставить макет занимать полную ширину экрана.

Я использую панель действий из библиотеки V7 AppCompat. Кто-нибудь знает об этом?

РЕДАКТИРОВАТЬ 1:

Вот файл макета XML:

<RelativeLayout 
            xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="fill_horizontal"
            android:orientation="horizontal">

                    <ImageView
                         android:id="@+id/left_icon"
                         android:background="@drawable/leftbutton"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         android:layout_marginLeft="10dp"
                         android:layout_alignParentLeft="true"
                         android:layout_centerVertical="true"
                         android:adjustViewBounds="true"
                         android:scaleType="centerInside"
                         android:clickable="true"
                         android:onClick="leftButtonPressed"
                         android:hapticFeedbackEnabled="true"
                    />

                    <ImageView
                         android:id="@+id/center_icon"
                         android:background="@drawable/centertitle"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         android:layout_centerInParent="true"
                         android:adjustViewBounds="true"
                         android:scaleType="centerInside"
                    />

                    <ImageView
                         android:id="@+id/right_icon"
                         android:background="@drawable/rightbutton"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         android:layout_marginRight="10dp"
                         android:layout_alignParentRight="true"
                         android:layout_centerVertical="true"
                         android:adjustViewBounds="true"
                         android:scaleType="centerInside"
                         android:clickable="true"
                         android:onClick="rightButtonPressed"
                         android:hapticFeedbackEnabled="true"
                    />
                </RelativeLayout>

Вот как это выглядит на Gingerbread (2.3.5):

Строка действий с пряниками http://i62.tinypic.com/4utfu0.png

Как вы можете видеть, его правильно накачивать. И вот как это выглядит на Киткате (4.4.2):

Панель действий Kitkat http://i59.tinypic.com/vosfex.png

Вы можете видеть, что есть небольшой пробел справа, а макет не занимает полную ширину.

Я не верю, что проблема с макетом (правильно ее раздувание на Android 2.3.5), но я могу ошибаться. Скажи мне, сумасшедшая ли я.

ИЗМЕНИТЬ 2:

Благодаря Doctoror Drive и этот пост я смог получить результат, который я хотел. Я знаю его немного странно: зачем использовать панель действий, если у вас нет каких-либо элементов навигации или действий, но это то, что мне нужно для моей конкретной проблемы. У меня есть TabHost со стопкой скользящих Фрагментов на каждой вкладке, а верхняя LinearLayout (т.е. Панель действий) должна изменить свой внешний вид, когда отображаются различные фрагменты.

ИЗМЕНИТЬ 3:

Вот еще несколько ссылок для дальнейшего понимания:

Ответ 1

Это не пробел, это кнопка переполнения меню справа. Если вы посмотрите внимательно, вы увидите трехточечную кнопку.

Вы выбрали неправильную тему, потому что вряд ли сможете ее увидеть. Используйте Theme.Compat.Light.DarkActionBar, если ваш ActionBar темный, и вам нужна легкая тема.

На устройствах, у которых нет физической кнопки меню (в основном новые), отображается кнопка переполнения меню.

Вы не можете удалить его, если вы не отключите меню.

Вы можете использовать splitActionBarWhenNarrow uiOptions, который разделит ActionBar так, что часть меню будет внизу, но это будет только для вертикальной ориентации средних экранов и, вероятно, не того, что вам нужно.

Взгляните на ActionBar Patterns doc и Меню UI doc

Ответ 2

В моем случае я решил проблему в обход вызова LayoutInflater.

Поэтому нужно просто заменить этот код:

View actionBarView = LayoutInflater.from(this).inflate(R.layout.custom_actionbar, null); 
actionBar.setCustomView(actionBarView, lp);

с помощью этого кода:

actionBar.setCustomView(R.layout.custom_actionbar);