BottomNavigationView 의 아이콘 사이즈는 내부적으로 하드코딩되어있다
그래서 drawable 이미지를 아무리 바꿔봤자 크기조절이 안된다
방법 1. support 라이브러리가 28 일때
=> BottomNavigationView XML 에서 수정가능
<android.support.design.widget.BottomNavigationView
app:itemIconSize="@dimen/_26sdp"
....
....
</android.support.design.widget.BottomNavigationView>
방법 2. support 라이브러리 27이하
<dimen name="design_bottom_navigation_height" tools:override="true">100dp</dimen>
<dimen name="design_bottom_navigation_active_text_size" tools:override="true">20dp</dimen>
<dimen name="design_bottom_navigation_active_item_max_width" tools:override="true">250dp</dimen>
<dimen name="design_bottom_navigation_item_max_width" tools:override="true">200dp</dimen>
<dimen name="design_bottom_navigation_item_min_width" tools:override="true">180dp</dimen>
public boolean IsTablet() {
//화면 사이즈 종류 구하기
int screenSizeType = getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK;
if (screenSizeType == Configuration.SCREENLAYOUT_SIZE_XLARGE || screenSizeType == Configuration.SCREENLAYOUT_SIZE_LARGE) {
return true;
}
return false;
}
if (IsTablet()) {
Log.d(TAG, "onCreate: 태블릿이다");
BottomNavigationMenuView menuView = (BottomNavigationMenuView) bottomNavigationView.getChildAt(0);
for (int i = 0; i < menuView.getChildCount(); i++) {
final View iconView = menuView.getChildAt(i).findViewById(android.support.design.R.id.icon);
final ViewGroup.LayoutParams layoutParams = iconView.getLayoutParams();
final DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
layoutParams.height = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 45, displayMetrics);
layoutParams.width = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 45, displayMetrics);
iconView.setLayoutParams(layoutParams);
}
}
'Android' 카테고리의 다른 글
RecyclerView 하단 합계 ( FooterView) (0) | 2019.04.19 |
---|---|
리스트 선택 : DialogFragment + ViewPager + 리스너연결 (0) | 2019.04.19 |
Rxjava + MVVM + databinding (0) | 2018.08.21 |
리사이클러뷰 리스트 바인딩 문제 (0) | 2018.07.27 |
BLE 통신 개념 + 통신 과정 + Notification 설정 (9) | 2018.06.21 |