Sono abbastanza nuovo per Xamarin e XAML cose e qui è quello che ho fatto finora nel mio progetto portatile utilizzato da Android & iPhone (solo con Android):Xamarin - Immagine da stringa Base64
Articolo cs (caricati da JSON)
[JsonProperty("image")]
private string ImageBase64 { get; set; }
[JsonIgnore]
private Xamarin.Forms.Image _image = null;
[JsonIgnore]
public Xamarin.Forms.Image Image
{
get
{
if (_image == null)
{
_image = new Xamarin.Forms.Image()
{
Source = Xamarin.Forms.ImageSource.FromStream(() => new MemoryStream(Convert.FromBase64String(ImageBase64))),
BackgroundColor = Color.White,
WidthRequest = 64,
HeightRequest = 64,
};
OnPropertyChanged("Image");
}
return _image;
}
private set
{ _image = value; }
}
ItemsView.xaml:
<StackLayout VerticalOptions="FillAndExpand" Padding="5,20,5,0" >
<Label Text="Items" VerticalOptions="Center" Font="35" HorizontalOptions="Center" />
<ListView x:Name="list" ItemsSource="{Binding Items}">
<ListView.ItemTemplate>
<DataTemplate>
<ImageCell
Text="{Binding ItemName}"
Detail="{Binding Infos, StringFormat='{0}'}"
Image.Source="{Binding Path=Image}">
</ImageCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
ho correttamente ottenere le mie etichette visualizzate ma l'immagine non è. Qualcuno può spiegarmi cosa sto facendo male?
2 cose saltano fuori da me: a) si sta vincolando un ImageSource a un'immagine b) "Path =" non è necessario – Jason