To jest moja strona w przenośnej projektuosadzone obrazy nie wykazujące
<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}" />
To mój ImageResourceExtension w samym przenośnej projektu
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;
}
}
}
Próbowałem dodać myimage.jpg jako osadzony w korzeniu mój projekt i folder Zasoby, ale nie widać obrazu.
Podczas debugowania widzę, że zwrócone źródło obrazu jest typu Xamarin.Forms.StreamImageSource. Jak mogę sprawdzić, czy tak naprawdę jest?
Czy ktoś może zauważyć błąd tutaj?
Obrazy są wewnątrz wspólnego projektu wraz z plikami XAML i ViewModels. Nie chcę umieszczać tych samych zdjęć na każdym projekcie. https://developer.xamarin.com/guides/cross-platform/xamarin-forms/working-with/images/#Embedded_Images – Vili
Ah, gotcha. Po prostu upewnij się, że robisz to dla konkretnych zastosowań. Istnieje wiele razy, kiedy chcesz umieścić je w każdym projekcie platformy, aby uwzględnić obsługę obrazów siatkówki w systemie iOS i obsługiwać obrazy o różnych rozmiarach (w trybie rysowania-hdmi, losowania-xxhdmi itp.) Dla różnych gęstości ekranu (i zdolności pamięci) na Androida. – SmartyP
Dobra rzecz, dzięki – Vili