我试图在工具栏上设置一个应用程序徽标,除了三星的Galaxy S7之外,它在大多数设备上看起来都很好。它看起来像微型在这个设备!!
这就是我如何在活动中将可绘制设置为工具栏的方式。
//....
setSupportActionBar(toolbar);
setToolbarIcon();
//...
private void setToolbarIcon() {
Drawable logo = getResources().getDrawable(R.drawable.app_logo);
if (toolbar != null) {
toolbar.setLogo(logo);
toolbar.setTitle(null);
}}以下图片将向您展示应用程序徽标大小与2台设备GoogleNexus5X和三星Galaxy S7上的工具栏默认标题的关系。
Nexus 5X

Galaxy S7

这两条绿线显示了每个设备中工具栏中的标题和徽标空间有多大的差异。
发布于 2017-01-03 08:20:34
这是因为GalaxyS7使用了更大的密度,并且您的徽标使用dp进行缩放。尝试为密度较大的设备添加xxxhdpi徽标。
查看支持多屏幕以获得更多信息
发布于 2017-01-03 10:25:43
当为每个屏幕密度创建不同的Drawable时,您也可以使用单个VectorDrawable。然后,您不需要担心不同的屏幕密度,因为VectorDrawable被自动缩放。但是,从图像中创建VectorDrawable可能有点棘手。这些可能有助于:
http://inloop.github.io/svg2android/
发布于 2017-01-03 09:50:26
设备Nexus5x属于xxhdpi范畴,因为s7在xxxhdpi中。因此,您没有按要求更新可绘制文件夹。
https://stackoverflow.com/questions/41439081
复制相似问题