Questa è la mia pagina in progetto portatileimmagini incorporate non mostrano
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:b="clr-namespace:Corcav.Behaviors;assembly=Corcav.Behaviors"
xmlns:local="clr-namespace:MyMobileApp;assembly=MyMobileApp"
x:Class="MyMobileApp.MainPage"
x:Name="MainPage">
<Image Source="{local:ImageResource myimage.jpg}" />
Questo è il mio ImageResourceExtension nel medesimo progetto portatile
namespace MyMobileApp
{
[ContentProperty("Source")]
public class ImageResourceExtension : IMarkupExtension
{
public string Source { get; set; }
public object ProvideValue(IServiceProvider serviceProvider)
{
if (Source == null)
return null;
var imageSource = ImageSource.FromResource(Source);
return imageSource;
}
}
}
ho cercato di aggiungere myimage.jpg come incorporato nella radice della mia progetto e nella cartella Risorse, ma nessuna immagine viene mostrata.
Durante il debug, vedo che il file image restituito è di tipo Xamarin.Forms.StreamImageSource. Come posso verificare se questo è veramente trovato?
Qualcuno può individuare l'errore qui?
immagini sono all'interno del progetto condiviso insieme con i file XAML e ViewModel. Non voglio mettere le stesse immagini su ogni progetto. https://developer.xamarin.com/guides/cross-platform/xamarin-forms/working-with/images/#Embedded_Images – Vili
Ah, gotcha. Assicurati di farlo per usi specifici. Ci sono molte volte che vorrai metterli in ogni progetto di piattaforma in modo da avere un supporto per le immagini retina su iOS e supportare immagini di dimensioni diverse (in drawable-hdmi, drawable-xxhdmi, ecc.) Per diverse densità dello schermo (e capacità di memoria) su Android. – SmartyP
Buon punto, grazie – Vili