我正在使用Acr.UserDialog包向我的应用添加加载'屏幕',我正在使用Xamarin Forms进行开发。我在某种程度上使用它:
var loading = UserDialogs.Instance.Loading("Carregando", null, null, true, MaskType.Gradient);
loading.Show();
(...)
loading.Hide();
工作正常。但是,我需要在此加载'屏幕'中添加动画Gif。有可能这样做吗?如果是这样,我该怎么办?这与Android和IO的过程相同吗?
提前谢谢!
答案 0 :(得分: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);
}
希望我帮助你一点点! :)