【发布时间】:2022-01-25 07:13:58
【问题描述】:
按照this 实现了 FontImageSource 以在我的应用程序上显示图标,图标显示,但嵌入文件 - FontAwesome.otf 导致 "Skipped 3120 frames! The application may be doing too much work on its main thread" 问题并且应用程序无法导航到其他页面。删除文件后应用程序再次正常工作。我正在使用 Font Awesome Solid .otf 文件,大约 500KB,常规(免费)没有我需要的所有图标(它是 95KB),它可以与 常规图标 配合使用强>。有没有办法解决它?我需要使用这些图标。
更新:
步骤:
- 在 Resources 文件夹中添加了 Font Awesome Solid .otf 文件。从here下载它。
- 在命名空间之前将
[assembly: ExportFont("FontAwesome.otf", Alias = "FontAwesome")]添加到 App.xaml.cs。 - 创建
FontAwesomeIcons.cs,从here获得 - 添加了
xmlns:fontAwesome="clr-namespace:MobileApp.UI"代码.xaml 页面。 - 创建的图标:
<Image>
<Image.Source>
<FontImageSource FontFamily="FontAwesome" Color="#666666" Size="Large" Glyph="{x:Static fontAwesome:FontAwesomeIcons.CloudUpload}"/>
</Image.Source>
</Image>
主页加载 - 图标在那里,我单击一个按钮导航到另一个页面,执行 API 调用需要很长时间,我得到一个结果,然后应用程序没有转到下一页并且代码没有转到到下一行。删除 .otf 文件可以解决问题,但我需要使用图标。有什么建议吗?
【问题讨论】:
-
1) 请将您的代码添加到问题中。即使它与链接代码完全相同,这也证实了没有一些不同的细微细节。并将帮助将来在谷歌上搜索该主题的其他人(链接可能会随着时间的推移而损坏)。 2) 使用该字体呈现的文本看起来还可以吗? (这确认它加载正常,只是花费了太长时间,并且让应用程序处于错误状态。)
-
@ToolmakerSteve 更新了我的问题。
标签: xamarin.forms font-awesome