安卓图标与标志的区别

102

Android清单文件中<application>标签包含一个我从未见过的logo属性。你的应用程序图标和它的Logo有什么区别? 它仅用于市场营销吗?


1
非常正确!但是在Eclipse的智能感知中没有显示出来!似乎平台想要为开发者添加一个新功能,使他们可以制作自己的标志(启动屏幕)并直接从清单中引用它。 - TeaCupApp
它会在IntelliJ的智能感知中显示。 - IgorGanapolsky
2个回答

121

如果在清单文件中提供了android:logo属性,ActionBar将使用它。这样可以为图标(启动器)和标志(ActionBar等)使用不同的可绘制资源。

来源:Android:如何将ActionBar“Home”图标更改为其他应用程序图标之外的内容?


setDisplayUseLogoEnabled() 启用在操作栏中使用一个替代图像(“徽标”),而不是默认的应用程序图标。 徽标通常是一个更宽,更详细的图像,代表应用程序。 当启用此功能时,系统将使用清单文件中定义的应用程序(或个别活动)的徽标图像,具有android:logo属性。 徽标将根据需要调整大小以适合操作栏的高度。(最佳实践是以与您的应用程序图标相同的大小设计徽标。)

来源:http://developer.android.com/guide/topics/ui/actionbar.html#Style


在应用程序中将图标替换为徽标,请在清单文件中使用android:logo属性指定您的应用程序徽标,然后在活动中调用setDisplayUseLogoEnabled(true)。
来源:http://developer.android.com/sdk/android-3.0.html#api

太棒了,感谢您提供完整的答案!这样就清楚多了。 - vol
1
如果最佳实践是将它们设置为相同的尺寸,那么为什么要使用徽标?或者他们可能只是指高度? - android developer

13

看起来:

  • android:logo 在 API Level 10 中可用,但在 API Level 8 中不可用
  • 如果没有使用 android:icon,使用 android:logo 不会在应用程序抽屉中设置应用程序图标

我猜想 "logo" 指的是公司的标志而不是应用程序图标。


1
这可能是情况,尽管我无法确定。在有人明确回答之前,我必须假设这是情况。谢谢! - vol
R.attr.logo自API Level 11起可用,因此android:logo也是如此。 ActionBar自API Level 11起也可用。在API Level 1到API Level 10之间,Android使用旧主题,因此您不需要在API Level 11之前设置徽标。自API Level 11以来,使用了新主题(Holo)。这就是为什么我提到的所有内容都自API Level 11起可用。 - Ben221199

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接