两个 问题。我认为将它们结合起来可能更明智,因为它们之间的联系非常紧密。
看看constants of the CupertinoIcons
class,我发现CupertinoIcons
中有 35 个图标。
文档页面显示有关this map的信息:
此图标字体中的图标图。
我希望所有这些图标也将出现在CupertinoIcons
中,因为缺少 374 地图上的 409 个图标。
对我来说,CupertinoIcons
仅带有 35 图标就没有用了,而我的cupertino_icons
中没有pubspec.yaml
时就可以访问它们。
我认为安装cupertino_icons
可能会有所改变。
现在,我安装了cupertino_icons
plugin ,没有更改 。我仍然可以使用与以前完全相同的 35 图标(并且无论是否显示插件都可以显示它们)。
这是因为我的设备已经安装了字体,因此不需要cupertino_icons
插件才能工作吗?
答案 0 :(得分:3)
该插件可确保包含必要的资产(字体)。
如果您查看源代码,则只要它们存在于字体中,就可以轻松地复制其中定义的常量。而且由于Flutter是开源的,因此,如果您在其中确定了您认为应该向用户公开的其他有用图标,则可以肯定会为此创建PR。
关于为什么……目前可能还没有任何人优先考虑它。查找,命名和显示这些图标有些繁琐的工作-并且我想很多这样做的人最终都只是想出“好,我现在做完了”,而不是将其回馈给项目。
您可以看到字体here中包含的图标的完整列表。您可以使用任何这些图标,即使在cupertino图标类中尚未定义它们,也可以使用。例如,如果您出于某些原因想要棒球图标:
const IconData baseball = const IconData(
0xf4ba,
fontFamily: CupertinoIcons.iconFont,
fontPackage: CupertinoIcons.iconFontPackage);
完全有可能将其作为请求请求添加到https://github.com/flutter/flutter/blob/master/packages/flutter/lib/src/cupertino/icons.dart中-但我想它不在那儿,因为它不被认为是普遍使用或必需的,或者可能是因为有人不了解它
无论哪种方式,您仍然需要cupertino_icons软件包,因为这将确保您的应用程序中包含.ttf文件(应用程序需要在运行时呈现图标)。但是,如果您不打算使用它们,请不要包含它,因为它会使您的应用程序超出其所需的大小(多余的字体会占用空间)。
答案 1 :(得分:2)