Размер панели действий AppCompat отличается от размера ActionBarSherlock

Я решил перейти с ActionBarSherlock (ABS) на AppCompat-v7. Я столкнулся с проблемой. ActionBar стал размером 56dp вместо 48dp, как это было в теме Holo. Как я обнаружил в ресурсах AppCompat, размер панели действий по умолчанию равен 56dp, как в Material design. Но я хочу, чтобы моя панель действий выглядела как панель действий в теме Холо. Как я могу указать необходимый размер для панели действий? Может быть есть AppCompat-v7 с Holo вместо Material?

сравнение панели действий

3 ответа

Решение

Это нормально.

Appcompat v21 библиотека позволяет перенести дизайны материалов на старые платформы Android.

Если вы хотите изменить высоту, вы можете использовать панель инструментов в макете и установить свою любимую высоту.

<android.support.v7.widget.Toolbar
    android:id=”@+id/my_awesome_toolbar"
    android:layout_height="48dp"
    android:layout_width="match_parent"
    android:background="?attr/colorPrimary" />

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

Используйте атрибут height, actionBarSize, если для чего-то еще.

<item name="android:height">@dimen/bar_height</item>

Новый AppCompat предназначен для реализации Material Design, поэтому я призываю вас соблюдать рекомендации и использовать размер по умолчанию. Однако, если вы хотите использовать нестандартный размер для вашей панели действий материала, вы можете переопределить actionBarSize в вашей теме:

<item name="actionBarSize">@dimen/bar_height</item>

Если вам нужен настоящий Holo ActionBar, вам нужно использовать AppCompat версии 20.0.0, которая является последней версией, поддерживающей Holo. Но тогда вы застряли и не можете использовать любую новую версию библиотеки поддержки.

Другие вопросы по тегам