2016-12-27 63 views
0

我目前在自定義數據模板中的listView上使用FFImageLoading庫。Xamarin:FFImageLoading不顯示在iOS上使用內部列表視圖

<ListView.ItemTemplate> 
        <DataTemplate> 
         <ViewCell> 
          <ViewCell.ContextActions> 
           <MenuItem Clicked="OnDelete" CommandParameter="{Binding .}" Text="Delete" IsDestructive="True" /> 
          </ViewCell.ContextActions> 
          <StackLayout 
           Padding="12,10,12,10" 
           BackgroundColor="Transparent" 
           Orientation="Horizontal"> 
           <Image 
            DownsampleToViewSize="true" 
            Aspect="AspectFit" 
            Source="{Binding FileThumbnail, Converter={StaticResource mimeTypeToImageConverter}}" 
            WidthRequest="60" 
            HeightRequest="60"> 
           </Image> 

的mimeTypeToImageConverter內部:

public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     if (value is string) 
     { 
      var file = (string)value;  

      if (FileUtilities.IsImageType(file)) 
      { 
       //var fileImageSource = new FileImageSource(); 
       //fileImageSource.File = file; 
       var imageSource = ImageSource.FromFile(file); 
       return imageSource; 
      } 
      else { 
       return ImageSource.FromFile("ic_file_white.png"); 
      } 

     } 
     return null; 
    } 

我曾經在Android但是Android正常工作。當我更改回Image控制時,iOS將顯示圖像。

我真的需要它來減少圖像大小。你們之前是否有過這個問題?

回答

2

而不是使用Image控件,您需要使用FFImageLoading控制

變化

<Image>...</Image> 

<forms:CachedImage>...</forms:CachedImage> 

還要添加命名空間

<ContentPage xmlns:forms="clr-namespace:FFImageLoading.Forms;assembly=FFImageLoading.Forms"> 

高速緩衝存儲器edImage應該具有與Image

相同的屬性.Oops忘了提及,您需要添加DownsampleHeight或DownsampleWidth以減小尺寸。

0

試圖通過http下載圖片,而不是https?

您需要如下因素添加到您的info.plist

<key>NSAppTransportSecurity</key> 
<dict> 
    <!--Include to allow all connections (DANGER)--> 
    <key>NSAllowsArbitraryLoads</key> 
     <true/> 
</dict> 
+0

沒有我使用的照片庫中的照片在手機中。 – LittleFunny