Android 从系统中使用图标,而不是将它们复制到项目中
对于常见的Android图标(如上下文菜单图标),我通常会将标准的Android图标复制到我的项目中。我最近意识到,您也可以使用android.R.drawable.bla从系统中获取这些图标。所以我的问题是,有什么理由选择一种方法而不是另一种 如果使用系统的更好,那么如何在XML中访问它们Android 从系统中使用图标,而不是将它们复制到项目中,android,Android,对于常见的Android图标(如上下文菜单图标),我通常会将标准的Android图标复制到我的项目中。我最近意识到,您也可以使用android.R.drawable.bla从系统中获取这些图标。所以我的问题是,有什么理由选择一种方法而不是另一种 如果使用系统的更好,那么如何在XML中访问它们 谢谢 最好将它们复制到您的项目中,因为系统图标不能保证保留在将来的版本中或保持相同的名称。将它们复制到您的项目中可以使您的应用程序在各个版本中具有一致的外观,并让您放心,您的图标将始终工作。最好将它们复制到
谢谢 最好将它们复制到您的项目中,因为系统图标不能保证保留在将来的版本中或保持相同的名称。将它们复制到您的项目中可以使您的应用程序在各个版本中具有一致的外观,并让您放心,您的图标将始终工作。最好将它们复制到您的项目中,因为系统图标不保证在将来的版本中保留或保持相同的名称。将它们复制到您的项目中可以使您的应用程序在各个版本中具有一致的外观和感觉,并让您放心,您的图标将始终工作。您可以通过在“@android”前面加上前缀来访问它们,即:
<Image android:src="@android:drawable/ic_menu_add" android:layout_height="wrap_content" android:layout_width="wrap_content"/>
如果使用系统资源,您将无法控制ressource的外观。您将在当前设备上安装ressource,这在不同的设备、制造商和android版本中有所不同。您可以通过在“@android”前面加上前缀来访问它们,即:
<Image android:src="@android:drawable/ic_menu_add" android:layout_height="wrap_content" android:layout_width="wrap_content"/>
如果使用系统资源,您将无法控制ressource的外观。您将在当前设备上安装ressource,这在不同的设备、制造商和android版本中有所不同。参考系统图像 一般建议尽可能参考系统图像
- 好:将匹配操作系统级别(某些图标在迭代过程中会更改)
- 好:可以很好地处理股票用户界面和自定义主题
- 好:无需出示Apache2许可证(IANAL)
- 坏:可能会破坏应用程序的外观
- 错误:仅限于正式导出的图像
@android:drawable/ic_menu_add
这也适用于字符串和其他资源,如“OK”文本。参考系统图像 一般建议尽可能参考系统图像
- 好:将匹配操作系统级别(某些图标在迭代过程中会更改)
- 好:可以很好地处理股票用户界面和自定义主题
- 好:无需出示Apache2许可证(IANAL)
- 坏:可能会破坏应用程序的外观
- 错误:仅限于正式导出的图像
@android:drawable/ic_menu_add
这也适用于字符串和其他资源,如“OK”文本。我相信用户会欣赏他们设备上所有应用程序的一致性。这是全有或全无。如果您使用的是系统提供的所有图标,您将确保设备上所有应用程序的外观和感觉都一致。如果你主要使用系统提供的图标和一些你自己设计的适合…那么,适合什么设备?如果您对某些项目使用自定义图标,确保一致外观的唯一方法是对所有项目使用自定义图标。我相信用户会欣赏他们设备上所有应用程序的一致外观。这是全有或全无。如果您使用的是系统提供的所有图标,您将确保设备上所有应用程序的外观和感觉都一致。如果你主要使用系统提供的图标和一些你自己设计的适合…那么,适合什么设备?如果对某些项目使用自定义图标,确保外观一致的唯一方法是对所有项目使用自定义图标。