XamarinForms FFImageLoading CachedImage 问题
XamarinForms FFImageLoading CachedImage issue
我正在从 API 中获取一个 .PNG
图像文件,就像这样
public static async Task<CachedImage> GetImage(string UserID)
{
var URL = "assumeThisUrlPointsToServer"
HttpClient client = new HttpClient();
Stream stream = await client.GetStreamAsync(URL);
return new CachedImage { Source = ImageSource.FromStream(() => stream) };
}
我正在取回一个文件,并像这样显示它
<ffimageloading:CachedImage HeightRequest="52" Margin="13,0,16,0" Source="{Binding SourceOfReturnedCachedImage}"/>
不幸的是,这不起作用(空白)。我如何让它工作?
其他详细信息: 如果我将其更改为 Image
而不是 CachedImage
,则它会起作用。
现在有趣的是,如果我指定 URI
而不是下载文件,就像这样,
return new CachedImage { Source = ImageSource.FromUri('http://www.website.com/image.png')};
然后它 (CachedImage
) 起作用了!
所以xamarin提供了一种简单的查看图片的方式,你可以直接将图片的url作为image/cachedimage的来源即可
<ffimageloading:CachedImage HeightRequest="52" Margin="13,0,16,0" Source="{Binding ImageURL}"/>
其中图像URL 是URL 我从
下载图像
流在每次加载图像后处理,您必须将代码修改为:
public static async Task<CachedImage> GetImage(string UserID)
{
var URL = "assumeThisUrlPointsToServer"
HttpClient client = new HttpClient();
return new CachedImage { Source = ImageSource.FromStream(() => {
return await client.GetStreamAsync(URL);
})};
}
我正在从 API 中获取一个 .PNG
图像文件,就像这样
public static async Task<CachedImage> GetImage(string UserID)
{
var URL = "assumeThisUrlPointsToServer"
HttpClient client = new HttpClient();
Stream stream = await client.GetStreamAsync(URL);
return new CachedImage { Source = ImageSource.FromStream(() => stream) };
}
我正在取回一个文件,并像这样显示它
<ffimageloading:CachedImage HeightRequest="52" Margin="13,0,16,0" Source="{Binding SourceOfReturnedCachedImage}"/>
不幸的是,这不起作用(空白)。我如何让它工作?
其他详细信息: 如果我将其更改为 Image
而不是 CachedImage
,则它会起作用。
现在有趣的是,如果我指定 URI
而不是下载文件,就像这样,
return new CachedImage { Source = ImageSource.FromUri('http://www.website.com/image.png')};
然后它 (CachedImage
) 起作用了!
所以xamarin提供了一种简单的查看图片的方式,你可以直接将图片的url作为image/cachedimage的来源即可
<ffimageloading:CachedImage HeightRequest="52" Margin="13,0,16,0" Source="{Binding ImageURL}"/>
其中图像URL 是URL 我从
下载图像流在每次加载图像后处理,您必须将代码修改为:
public static async Task<CachedImage> GetImage(string UserID)
{
var URL = "assumeThisUrlPointsToServer"
HttpClient client = new HttpClient();
return new CachedImage { Source = ImageSource.FromStream(() => {
return await client.GetStreamAsync(URL);
})};
}