FFImageLoading.Svg.Forms 如何利用外部库

FFImageLoading.Svg.Forms how to leverage an external library

我有一个 Xamarin Forms 标准项目,我想利用 svg。根据文档,我应该能够利用外部程序集来引用我的文件。

When loading from embedded resources, you can specify different assembly with following format: resource://FFImageLoading.Forms.Sample.Resources.sample.svg?assembly=[ASSEMBLY FULL NAME]

我创建了一个 .net 标准库并将所有 svg 文件标记为嵌入资源。我引用了外部库,但我在屏幕上看不到任何内容。

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:ASHT"
             xmlns:ffimageloadingsvg="clr-namespace:FFImageLoading.Svg.Forms;assembly=FFImageLoading.Svg.Forms"
             x:Class="ASHT.MainPage">

    <ffimageloadingsvg:SvgCachedImage WidthRequest="200" HeightRequest="200" Source="resource://Xamarin.FontAwesome.amazon.svg?assembly=Xamarin.FontAwesome"/>

</ContentPage>

我是不是做错了什么?

看来您必须从主可执行文件加载程序集。换句话说,在主要 activity 启动代码中只需添加这样一行。这会强制程序集作为运行时的一部分加载,然后可以访问。

var FAweseome = typeof(Xamarin.FontAwesome.Initialise);

Initialise 只是我库中的一个 class,它什么都不做。一旦你加载了库,你就可以按照文档使用它。

感谢 daniel-luberda 帮助我清理它。 https://github.com/luberda-molinet/FFImageLoading/issues/982#issuecomment-375287918