自己在程序中使用BottomNavigationView菜单栏时,因要求图标文字显示一致的效果.
![](https://img.haomeiwen.com/i8499177/12ec7b2364eff42d.png)
使用后在debug版本下正常显示,有效果:
![](https://img.haomeiwen.com/i8499177/062f9c5cc4b71a52.png)
打包后却失效了,release版本:
![](https://img.haomeiwen.com/i8499177/4e868f486ec038d4.png)
原因是因为我们在打包时做了混淆, 但是我却没有把反射时的模式变量过滤掉,也就是上面代码片段中的 "mShiftingMode"变量, 所以导致在打包版本上无效.
解决办法: 在混淆文件中添加如下代码
-keepclassmembers class android.support.design.internal.BottomNavigationMenuView {
boolean mShiftingMode;
}
![](https://img.haomeiwen.com/i8499177/8230155b72e5c329.png)
网友评论