마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

BottomNavigationView 에서 메뉴 4개 사용시 빈공간

0 추천

BottomNavigationView를 사용할 때, 4개의 메뉴로 구성하였는데,

 

<com.google.android.material.bottomnavigation.BottomNavigationView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:itemBackground="@color/colorGreen2"
    app:itemIconTint="@drawable/item_color"
    app:itemTextColor="@drawable/item_color"
    app:menu="@menu/menu_bottom" />

 

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <item
        android:id="@+id/alarm"
        app:showAsAction="ifRoom"
        android:enabled="true"
        android:icon="@drawable/menu_alarm"
        android:title="알람" />

    <item
        android:id="@+id/taking"
        app:showAsAction="ifRoom"
        android:enabled="true"
        android:icon="@drawable/menu_taking"
        android:title="복용체크" />

    <item
        android:id="@+id/drug"
        app:showAsAction="ifRoom"
        android:enabled="true"
        android:icon="@drawable/menu_drug"
        android:title="약 관리" />

    <item
        android:id="@+id/settings"
        app:showAsAction="ifRoom"
        android:enabled="true"
        android:icon="@drawable/menu_settings"
        android:title="설정" />

</menu>


 

실제로는 다음처럼 검은색 빈칸이 형성됩니다.
 

메뉴가 3개나 5개에서는 꽉채워지거든요.

아니면 다음의 속성을 BottomNavigationView에 넣으면 글자가 모두 보이는 대신 채워지긴 합니다.

app:labelVisibilityMode="labeled"

이 빈칸이 생기는 원인은 무엇이고, 선택된 아이콘만 글자가 나오면서 채울 수 있는 다른 방법은 없을까요?

idea2code (160 포인트) 님이 2020년 6월 28일 질문

1개의 답변

0 추천
BottomNavigationView 에서 app:itemBackground 를 사용했는데,

이 아이콘이 크기를 채우지 못해서 이렇게 되는 것 같습니다.

 

android:background 를 사용하니 빈 공간이 없이 모두 메꿀수 있습니다.

 

그런데 아이콘이 작아서 간격이 균등하지 않은 것 같은데 이를 알맞게 정렬 할 수 있는 게 있는지는 찾아봐야 할 것 같습니다. (아이콘 사이즈를 더 키워야 맞출거 같습니다.)
idea2code (160 포인트) 님이 2020년 6월 29일 답변
...