我正在尝试使用底部导航栏的项目图标内的 firebase 存储 url 加载个人资料图像,这是我的代码:
Glide.with(getApplicationContext()).asBitmap().load(profilePicUrl)
.into(new CustomTarget<Bitmap>() {
@Override
public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
Drawable profileImage = new BitmapDrawable(getResources(), resource);
bottomNav.getMenu().getItem(4).setIcon(profileImage);
}
@Override
public void onLoadCleared(@Nullable Drawable placeholder) {
}
});
The profilePicUrl
确实有效,我已经将它用于另一个图像视图。但是,当我运行该应用程序时,图标的尺寸会根据我尝试加载的图片而变化,但内部没有图像,这是它的样子 https://i.stack.imgur.com/ni0aE.jpg.
菜单不支持彩色图像
您不能在这些地方以及更多地方使用彩色图像:
- 在底部导航中
- 在导航抽屉中
- 在弹出菜单中
- etc...
基本上,任何视图都使用菜单文件作为其资源,不能有彩色图像。这就是为什么你看不到它。要亲自测试它,请在可绘制对象中拍摄一张彩色图像并将其设置为底部导航的图标。你注意到它以同样的方式出现。这证明了这一点
Edits
-
This https://stackoverflow.com/q/57861254/17133283帖子提供了一些有关如何操作的信息
- 你可以这样做:
mBottomNav.setItemIconTintList(null);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)