我在Android上显示图片时遇到问题。这个问题在IOS中不存在。
我的屏幕显示包括图像的信息。
有时图片来自可绘制对象(始终可用),有时图片来自保存到设备中的图片(对于Android,System.Environment.SpecialFolder.Personal
和IOS,Environment.SpecialFolder.Resources
)。
我发现,当图像来自保存到设备中的文件时,它在Android上无法正确显示。它似乎很小。
因此,简而言之,该问题仅在Android上针对保存到设备的图像出现。绘图很好。
这是 retailerImage
这是相关的XAML ...
<ContentView x:Name="mainView" ControlTemplate="{StaticResource ButtonNavTemplate}">
<ScrollView Orientation="Vertical" VerticalOptions="Fill">
<Grid x:Name="mainGrid" RowSpacing="20" ColumnSpacing="0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
<!--<RowDefinition Height="Auto"></RowDefinition>-->
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Image x:Name="categoryImage" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" Aspect="AspectFill" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand"></Image>
<Frame x:Name="retailerImageFrame" Grid.Row="0" Grid.RowSpan="3" Grid.Column="1"
Padding="5" HorizontalOptions="Center" VerticalOptions="End">
<Image x:Name="retailerImage" Aspect="AspectFit"></Image>
</Frame>
...
...
以及设置图像源的代码部分...
categoryImage.Source = ImageSource.FromFile(ImageService.GetSpendCategoryImagePath(this.retailer.SupplierCategoryId));
var imageSource = ImageSource.FromFile(this.retailer.ImageFromAssets);
正如我所说,在IOS上还可以,所以我希望不必进行太多更改,但是我已经进行了几天的修改,似乎无法使图像在所有情况下看起来都一样。
任何想法和想法都将不胜感激。