2017-09-05 82 views
0

我正在用xamarin形式構建移動應用程序。我有一個列表視圖,將存儲關於URL的描述。我希望能夠顯示綁定到url的圖標或圖像,而不會將圖像保存到我的數據庫中。當你給某人發短信的時候,圖片顯示的是url。任何想法如何做到這一點?我一直在研究,沒有運氣。以xamarin形式列表視圖顯示與url相關的圖像

+0

你的意思favicon?或者,如果沒有,你談論什麼的具體例子會有幫助。 – Jason

+0

是的favicon是我的意思。這樣我就可以將它拉出來並在列表視圖中顯示它的描述 – user2320476

+0

你讀過了它的[docs](https://en.wikipedia.org/wiki/Favicon)嗎?你到底在做什麼? – Jason

回答

0

希望這有助於指定UriImage源圖像,設置uri屬性的圖像URL

   <Image 
       HorizontalOptions="FillAndExpand" 
       VerticalOptions="FillAndExpand" 
        Aspect="AspectFit"> 
        <Image.Source> 
         <UriImageSource Uri="{Binding EventImage}" 
          CacheValidity="3" 
          CachingEnabled="true"/> 
        </Image.Source> 
       </Image> 
+0

屬性我不存儲圖像。我希望能夠從url中提取圖片 – user2320476

+0

這段代碼是否會從url中提取圖片並將其存儲在列表視圖中? – user2320476

+0

是在你的視圖模型中創建一個屬性,並使用它來代替EventImage –

1

在ListView來顯示圖像,使用的ImageCell

<ImageCell ImageSource="{Binding FaviconUrl}" Text="{Binding Name}" /> 

你必須向你的模型添加一個屬性,以確定(或猜測)該網站的圖標的正確URL。

+0

我確實有所有的網址存儲在我的數據庫正在拉動。我也有一個名爲description的字段。我想在我的列表視圖中顯示描述和圖標網址 – user2320476

+0

我建議你添加一個屬性到你的模型中,它將根據你已經在數據庫中的url返回的圖標網址。 – Jason

+0

www.yahoo.com可以成爲faviconUrl嗎? – user2320476

0

您可以使用Google S2 converter獲取fav圖標。

對於如: https://www.google.com/s2/favicons?domain=yahoo.comicon

讓它與你的圖像控制工作,這應該在技術上的工作:

<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>