2017-12-17 4 views
0

Ich benutze das Nugget-Paket SVG.Forms.Plugin.Abstractions, ich habe das XAML unten von einem einfachen Beispiel kopiert, kann aber nicht die SVG anzeigen. Das Bild befindet sich in einem 'images'-Ordner innerhalb der TestApp-Anwendung und die Build-Aktion ist Embedded Resource. SvgAssebly ist im ViewModel an die öffentliche Assembly gebunden. Ich bekomme nur einen leeren Bildschirm mit dem Titeltext oben. Kann jemand etwas offensichtlich falsch sehen?Verwenden von SVG-Bildern in Xamarin-Formularen

public Assembly SvgAssembly 
{ 
     get { return typeof(App).GetTypeInfo().Assembly; } 
} 

XAML:

<?xml version="1.0" encoding="utf-8"?> 
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
      xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
      x:Class="TestApp.MainPage" 
      xmlns:artina="clr-namespace:UXDivers.Artina.Shared;assembly=UXDivers.Artina.Shared" 
      xmlns:local="clr-namespace:TestApp;assembly=TestApp" Title="{ artina:Translate PageTitle}" BackgroundColor="{DynamicResource BasePageColor}" 
      xmlns:abstractions="clr-namespace:SVG.Forms.Plugin.Abstractions;assembly=SVG.Forms.Plugin.Abstractions"> 

    <ContentPage.Content> 

     <StackLayout> 
      <abstractions:SvgImage 
       SvgAssembly="{Binding SvgAssembly }" 
       SvgPath="TestApp.images.brand.svg" 
       Width="200" 
       Height="200" /> 
     </StackLayout> 
    </ContentPage.Content> 
</ContentPage> 
+0

was Geräteplattform konzentrieren Sie sich auf? – LeRoy

Antwort

0

Nur ein Hinweis:

  1. entfernen Sie den Abstand von Ihrer Bindung:

    SvgAssembly = "{SvgAssembly Binding}"

  2. Sie sollten das Bild wie folgt sein Referenzierung:

    SvgPath = „brand.SVG“

Sie müssen sicherstellen, dass Sie das Bild verweisen richtig: meine Antwort von einer anderen Frage here.