我正在使用xamarin表单构建移动应用程序。我有一个listview,它将存储关于url的描述。我希望能够显示绑定到URL的图标或图像,而不会在我的数据库中保存图像。当您向某人发送网址时,我会使用该网址显示图片。有什么想法可以做到这一点?我一直在研究,没有运气。
答案 0 :(得分:1)
希望这有帮助,为你的图像指定一个UriImage源,将uri属性设置为图像url
<Image
HorizontalOptions="FillAndExpand"
VerticalOptions="FillAndExpand"
Aspect="AspectFit">
<Image.Source>
<UriImageSource Uri="{Binding EventImage}"
CacheValidity="3"
CachingEnabled="true"/>
</Image.Source>
</Image>
答案 1 :(得分:1)
要在ListView中的Image中显示,请使用ImageCell
<ImageCell ImageSource="{Binding FaviconUrl}" Text="{Binding Name}" />
您必须在模型中添加一个属性,以确定(或猜测)该网站的图标的正确网址。
答案 2 :(得分:0)
您可以使用Google S2 converter获取fav-icon。
例如: https://www.google.com/s2/favicons?domain=yahoo.com:
要使其与您的图像控件一起使用,这在技术上应该起作用:
<ImageCell Text="{Binding DomainUrl}">
<ImageCell.ImageSource>
<UriImageSource Uri="{Binding Path=DomainUrl, StringFormat='https://www.google.com/s2/favicons?domain={0}'}"
CacheValidity="1"
CachingEnabled="true"/>
</ImageCell.ImageSource>
</ImageCell>
或者,
<ViewCell>
<StackLayout Orientation="Horizontal" Padding="5">
<Image HorizontalOptions="Center" VerticalOptions="Center">
<Image.Source>
<UriImageSource Uri="{Binding Path=DomainUrl, StringFormat='https://www.google.com/s2/favicons?domain={0}'}"
CacheValidity="1"
CachingEnabled="true"/>
</Image.Source>
</Image>
<Label Text="{Binding Path=DomainUrl}" />
</StackLayout>
</ViewCell>