2016-11-16 3 views
0

Я использую пакет Acr.UserDialog, чтобы добавить экран загрузки в мое приложение, которое я разрабатываю с использованием Xamarin Forms. Я использую это так:Использование анимированного Gif в Acr.UserDialog в форматах Xamarin

var loading = UserDialogs.Instance.Loading("Carregando", null, null, true, MaskType.Gradient); 

loading.Show(); 
(...) 
loading.Hide(); 

Он работает нормально. Однако мне нужно добавить анимированный Gif к экрану загрузки. Это можно сделать? Если да, то как я могу это сделать? Это аналогичная процедура для Android и IO?

Спасибо заранее!

ответ

2

Попробуйте использовать WebView для эффекта. Он работает на всех платформах. Вам нужно сначала написать Xml-файл для анимации. Это мой образец для файла Xml:

<?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     > 

    <WebView 
     android:id="@+id/webLoadingIcon" 
     android:layout_width="44dp" 
     android:layout_height="44dp" 
     android:layout_gravity="center_horizontal|center_vertical" 
     android:layout_marginTop="120dp" 
     android:background="#00000000" 
     /> 

    </LinearLayout> 

«webLoadingIcon» представляет имя вашего .gif фото вы хотите использовать. Затем создайте метод, который использует и загружает фотографию .gif на экране. Это пример:

void LoadAnimatedGif() 
    { 
     webLoadingIcon = currentView.FindViewById<WebView>(Resource.Id.webLoadingIcon); 
     // expects to find the 'loading_icon_small.gif' file in the 'root' of the assets folder, compiled as AndroidAsset. 
     webLoadingIcon.LoadUrl(string.Format("file:///android_asset/loading_icon_small.gif")); 
     // this makes it transparent so you can load it over a background 
     webLoadingIcon.SetBackgroundColor(new Color(0,0,0,0)); 
     webLoadingIcon.SetLayerType(LayerType.Software, null); 
    } 

Надеюсь, что я помог вам немного! :)