我们开发了一款基于旧版Holo.Light Theme的Android应用程序,该应用程序正在使用来自图书馆版本2013/11/06的Android标准图标。对于图标的使用,我总是将我需要手动从标准库复制到我的Visual Studio / Xamarin文件夹下:
/抽拉-HDPI
/抽拉-MDPI
/抽拉-xhdpi
/抽拉-xxhdpi
现在我已将默认主题更改为Android Material Design,我还想将旧图标与https://github.com/google/material-design-icons/中的图标进行交换 我的计划只是将我需要的新材料设计图标从新标准库复制到我的项目文件夹以交换旧的。好的,类似图标的名称不同,但可以找到合适的图标。
但是在我现在每个文件夹中的新材料设计图标库中,每个图标都有一组不同的尺寸。在旧版本中,我每个文件夹只有一个,例如对于材料设计图标ic_edit_black_xx我现在在每个库文件夹中......
/抽拉-MDPI /
/抽拉-HDPI /
此外,现在还有图标名称的大小部分。
那么现在的程序如何?
1。)我是否总是需要将所有四个图标大小复制到每个文件夹? (对我来说没有意义)
2。)大小的名称扩展名是否仍然存在,还是我必须将其删除?或Android是否需要扩展大小选择? 如果我想要引用这个图标,我必须在我的c#代码和我的xml代码中实现什么?只是" ic_edit_black" ??
我在网络上找不到信息,告诉我应该如何使用Visual Studio / Xamarin处理它。
如果有人可以向我解释或给我一个解释的良好链接,那会很棒。
先谢谢并提出最好的问候
马克
答案 0 :(得分:5)
1。)我是否总是需要将所有四个图标大小复制到每个文件夹? (对我来说没有意义)
这只是一个基于dpi支持更小/更大屏幕的缩放比例(即18,24,36,48)。对于工具栏/通知图标,大多数人只能使用24dp,而在按钮等其他项目上则可以使用36dp。否则,您可以通过以下值计算出这些值:
ldpi = 0.75 - 18x18
mdpi = 1.0 - 24x24(基线)
hdpi = 1.5 - 36x36
xhdpi = 2.0 - 48x48
xxhdpi = 3.0
xxxhdpi = 4.0
直接回答这个问题,答案是“不,你不这样做”。您可以选择所需的相应尺寸。但是,为不同尺寸的设备保留这些设备是个好主意。
2。)大小的名称扩展名是否仍然存在,还是我必须将其删除?或Android是否需要扩展大小选择?如果我想要引用这个图标,我必须在我的c#代码和我的xml代码中实现什么?只是“ic_edit_black”??
我会在您的图标名称中保留大小,以便您可以在整个应用程序中使用它以用于不同目的(例如显示大小)。 Android已经检查了通过显示桶使用的正确dpi级别。
https://developer.android.com/training/multiscreen/screensizes.html
您需要指定项目中显示的确切资源名称。如果您在名称中保留大小扩展名,请使用它。如果您确定每个图标只需要1个大小,则可以重命名(使用基线)。
https://developer.android.com/training/multiscreen/screendensities.html
答案 1 :(得分:3)
此插件可帮助您向Android,iOS或UWP项目中添加材质设计图标
功能
- 从Google公共图标仓库中添加图标
- 对Xamarin.Android项目的支持
- 对Xamarin.iOS项目的支持
- 对UWP项目的支持
祝你好运!