嘿嘿嘿。
闲着没事逛了逛 stackoverflow,发现有人问及这个问题:
如何改变默认的NavigationView中的左侧icon大小?
嘿嘿,看到没人回到,果断想去歪果仁面前秀一波。
于是查看NavigationView中的源码,最终发现在 NavigationMenuItemView这个类中实现时,是采用以下方式获取大小的:
public NavigationMenuItemView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
this.mIconSize = context.getResources().getDimensionPixelSize(dimen.navigation_icon_size);
}
哦胡?发现了,原来是这玩意。。。一开始不太懂,就以为:卧槽,这个不能修改了!修改起来太复杂,要重写啊。
嗯。。。。皇天不负有心人,在我午睡睡醒之后,我就顿悟了。哈哈哈哈哈
别怪我笑的猖狂,我只是太开心哈哈哈哈哈哈。
解决方法:
在dimens 文件中加入该属性:
<dimen name="navigation_icon_size">48dp</dimen>
里面的值随你设置多大。
然后,NavigationView中的icon大小就得以改变了~
修改前:
修改后: