web-dev-qa-db-ja.com

URL Xamarin.Formsの画像を表示

このコードを使用して、URL付きの画像を表示しています

.xaml

    <?xml version="1.0" encoding="UTF-8"?>
    <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.Microsoft.com/winfx/2009/xaml" x:Class="LandAHand.VolunteerView">
        <ContentPage.Content>
             <AbsoluteLayout BackgroundColor="Maroon">
                 <Image x:Name="backgroundImage" AbsoluteLayout.LayoutBounds="0,0,1,1"   AbsoluteLayout.LayoutFlags="All" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" Aspect="AspectFill"/>
             </AbsoluteLayout>
        </ContentPage.Content>
    </ContentPage>

.cs

using System;
using System.Collections.Generic;

using Xamarin.Forms;

namespace LandAHand
{
    public partial class VolunteerView : ContentPage
    {
        public VolunteerView()
        {
            InitializeComponent();
            backgroundImage.Source = new UriImageSource
            {
                Uri = new Uri("https://s9.postimg.org/aq1jt3fu7/handshake_87122244_std.jpg"),
                CachingEnabled = true,
                CacheValidity = new TimeSpan(5, 0, 0, 0)
            };
        }
    }
}

このコードはiOSでは正常に機能しますが、Androidでは機能しません。

11
Kishore Suthar

さて、あなたはあなたのXamlでこのことをより簡単にすることができます

<Image x:Name="backgroundImage" Source="https://s9.postimg.org/aq1jt3fu7/handshake_87122244_std.jpg" AbsoluteLayout.LayoutBounds="0,0,1,1"   AbsoluteLayout.LayoutFlags="All" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" Aspect="AspectFill"/>

そして、背後にあるコードに関連するコードを削除します。キャッシングはデフォルトで24時間有効になっています

7
Ahmad ElMadi

Https URLを使用しているため、機能しません。修正するには、Android Project like this:Project Options> Android Options、click Advanced Options HttpClient implementation:choose Android SSL/TLS実装:Native TLS 1.2+を選択

https://docs.Microsoft.com/en-us/xamarin/Android/app-fundamentals/http-stack?tabs=windows

そして、すべてのXamarin.Androidパッケージを更新します

2
Benoit Canonne