我想要在底部导航视图中,仅更改第三个图标的大小。
我希望中心图标变大,就像这样:
这是我尝试过的方法:
private fun setReportPainIconSize(){
val bottomNavigationView =
findViewById<BottomNavigationView>(R.id.navigationBottomView)
val menuView: BottomNavigationMenuView =
bottomNavigationView.getChildAt(0) as BottomNavigationMenuView
val iconView: View = menuView.getChildAt(2) **//TO GET REFERENCE OF 3RD ITEM**
.findViewById(androidx.core.R.id.icon)
val layoutParams: ViewGroup.LayoutParams = iconView.layoutParams
val displayMetrics: DisplayMetrics = resources.displayMetrics
layoutParams.height = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP, 47F,
displayMetrics
).toInt()
layoutParams.width = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP, 44F,
displayMetrics
).toInt()
iconView.layoutParams = layoutParams
}
但是当我运行我的应用程序时,它会崩溃并显示以下错误消息:
Caused by: java.lang.NullPointerException: menuView.getChildAt(2)
…(androidx.core.R.id.icon) must not be null
我该如何实现它?请帮忙!