Xamarin.Forms 图像未从源显示

时间:2021-02-22 12:15:53

标签: c# image xamarin.forms dotnet-httpclient imagesource

我正在使用假 Api 来测试应用程序。Api 位于此链接上: public new event MouseEventHandler MouseClick { add { button1.MouseClick += value; } remove { button1.MouseClick -= value; } } 。我连接我的应用程序,获取所有照片并添加到 CollectionView。一切正常,但图像不显示。这是我的代码:

http://jsonplaceholder.typicode.com/

这是我从调试应用程序中获得的图像:

enter image description here

可能是什么问题或所有图像都是空白的。 我也在控制台中得到了这个:

    <Grid>
    <StackLayout>
        <Frame BackgroundColor="#2196F3" Padding="24" CornerRadius="0">
            <Label Text="Welcome to Xamarin.Forms!" HorizontalTextAlignment="Center" TextColor="White" FontSize="36"/>
        </Frame>
            <RefreshView IsRefreshing="{Binding IsRefreshing, Mode=OneWay}"
             Command="{Binding LoadRefreshCommand}">
                <CollectionView ItemsSource="{Binding Photos}" SelectedItem="{Binding SelectedPhoto}" >
                    <CollectionView.ItemTemplate>
                        <DataTemplate>

                            <Grid Padding="0,0,5,0" >
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*"/>
                                    <ColumnDefinition Width="3*"/>

                                </Grid.ColumnDefinitions>
                                <Grid.GestureRecognizers>
                                    <TapGestureRecognizer  Command="{Binding Source={x:Reference CurrentPage}, Path=BindingContext.LoadPhotosCommand}" />
                                </Grid.GestureRecognizers>
                                <Image  Source="{Binding Url}" Grid.Column="0"></Image>
                                <Frame HasShadow="False" VerticalOptions="Center"  Grid.Column="1">
                                    <Label Text="{Binding Title}"></Label>
                                </Frame>
                            </Grid>
                        </DataTemplate>
                    </CollectionView.ItemTemplate>
                </CollectionView>
            </RefreshView>
        </StackLayout>
        <StackLayout HorizontalOptions="CenterAndExpand" VerticalOptions="Center">
            <Frame IsVisible="{Binding IsBusy}" BorderColor="#07987f" HasShadow="False" BackgroundColor="#eeeeee">
                <StackLayout>
                    <ActivityIndicator IsVisible="{Binding IsBusy}" IsRunning="{Binding IsBusy}" HorizontalOptions="Center" VerticalOptions="Center"></ActivityIndicator>
                    <Label TextColor="#07987f" Text="Loading Data, Please Wait..." HorizontalTextAlignment="Center" VerticalTextAlignment="Center" HorizontalOptions="Center" VerticalOptions="Center" IsVisible="{Binding IsBusy}"/>
                </StackLayout>
            </Frame>
        </StackLayout>
    </Grid>

有人遇到过同样的问题吗?

1 个答案:

答案 0 :(得分:0)

我不知道为什么 source 会导致阅读问题。这是我修复它的方法:

  1. 只需更改以下选项,它也应该适用于 https。
  2. Android 选项 => 高级
  3. HttpClient 实现 = 设置为“托管”选项值
  4. SSL/TLS 实现 = 设置为“Native TLS 1.2+”选项值
相关问题