19

我正在编写一个 android 应用程序,我想在这个应用程序中使用邮件、电话、日历和联系人的系统图标。问题是,这些图标因系统而异(不同的 android 版本和不同的智能手机),我想保持应用程序和系统一致。有没有简单的方法来实现这一目标?

4

5 回答 5

26

在 XML 中使用来自 @android:drawable/... 的默认 android drawables,在代码中使用 android.R.drawable...。

于 2012-09-04T12:11:03.080 回答
6

您可以在 java 代码中的 xml 文件 android.R.drawable.[icon_name] 中使用 @android:drawable/[icon_name] 使用标准可绘制对象

您可以在 [SDK PATH]/platforms/platforms/[ANDROID_VERSION]/data/res 的文件系统中看到不同的图标

有些图像是标准的……比如联系人、日历:)

于 2012-09-04T12:07:57.000 回答
5

你不能保持系统一致。为了什么?新版本的 Android 通常比旧版本更漂亮(嗯,这是我的看法)。

为您的应用程序保持系统图标相同的唯一方法 - 将它们复制到您的可绘制对象中,而不是使用对它们的直接引用(如@android:drawable/)。

于 2012-09-04T12:10:00.060 回答
4

首先,如果您打算对 mail 、 phonr 等使用默认图像(图标)。

此默认值可用作代码中的 android.R.drawable.name 或 xml 中的 @android:drawable/http://docs.since2006.com/android/2.1-drawables.php

但因为这会因操作系统版本而异。

因此,如果您需要为所有版本和设备的应用程序使用独特的 GUI。

请不要使用 android 提供的图像,只需使用您自己的图形或您在可绘制资源中为您的应用明确提供的图像。

于 2012-09-04T12:15:03.940 回答
1

如果您对每个系统的图标都满意,您可以通过 PackageManager 和 getApplicationInfo 方法获取它。

如果不是,您应该将平台上的资源复制到您自己的应用程序中。

于 2012-09-04T12:07:24.480 回答