Изменить размер закусочной

Я пытаюсь показать SnackBar, но он больше (в y), чем ожидалось.

Ожидал

введите здесь описание изображения

Результат

введите здесь описание изображения

Я попытался установить отступы и поля в стиле, но он просто меняет левое и правое отступы.

Уже попробовал

Как отчаянный способ у меня есть это:

  • Тема приложения:
<item name="snackbarStyle">@style/Snackbar</item>
<item name="snackbarTextViewStyle">@style/Snackbar.TextView</item>
  • Стили:
    <style name="Snackbar" parent="@style/Widget.MaterialComponents.Snackbar.FullWidth">
        <item name="backgroundTint">@color/lh_slate_opacity_90</item>

        <item name="android:paddingEnd">0dp</item>
        <item name="android:paddingStart">0dp</item>
        <item name="android:paddingTop">0dp</item>
        <item name="android:paddingBottom">0dp</item>

        <item name="android:layout_marginTop">0dp</item>
        <item name="android:layout_marginLeft">0dp</item>
        <item name="android:layout_marginRight">0dp</item>
        <item name="android:layout_marginBottom">0dp</item>
    </style>

    <style name="Snackbar.TextView" parent="@style/Widget.MaterialComponents.Snackbar.TextView">
        <item name="android:fontFamily">@font/poppins</item>
        <item name="android:textSize">12sp</item>

        <item name="android:paddingEnd">0dp</item>
        <item name="android:paddingStart">0dp</item>
        <item name="android:paddingTop">0dp</item>
        <item name="android:paddingBottom">0dp</item>

        <item name="android:layout_marginTop">0dp</item>
        <item name="android:layout_marginLeft">0dp</item>
        <item name="android:layout_marginRight">0dp</item>
        <item name="android:layout_marginBottom">0dp</item>
    </style>

Я получаю такое же поведение для:

  • com.google.android.material:material:1.2.0-alpha05
  • com.google.android.material:material:1.1.0

Он изменяет цвет фона и семейство шрифтов, но не верхнее и нижнее заполнение закусочной.


person Daniel Gomez Rico    schedule 24.03.2020    source источник


Ответы (1)


Для этого нет официального API, но вы можете переопределить ресурс заполнения в своем dimens.xml

<dimen name="design_snackbar_padding_vertical" tools:override="true">5dp</dimen>

Здесь вы можете найти все размеры, которые вы можете переопределить таким же образом https://github.com/material-components/material-components-android/blob/master/lib/java/com/google/android/material/snackbar/res/values/dimens.xml

person Tiko    schedule 25.03.2020