如何创建加载动画[关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何创建加载动画[关闭]相关的知识,希望对你有一定的参考价值。

我的应用程序中有许多媒体元素通过Web流式传输。有时候我需要等2-3秒才能完成。这对我来说不是问题。问题是我不知道如何制作某种加载动画。我有一个加载栏的动画GIF,但我不知道如何显示它。有任何想法吗 ?

答案

你不需要它的GIF。有一个XAML Control ProgressRing。将它的IsActive属性绑定到指示您正在加载的属性。

就像是:

public class DataService : BindableBase
{
    private bool _isLoading;

    public bool IsLoading 
    {
        get 
        {
            return _isLoading;
        }
        set 
        {
            SetProperty(ref _isLoading, "IsLoading");
        }
    }

    public void MyMethodWhichTakesLongTime() 
    {
        IsLoading = true;

        // Do some time consumption

        IsLoading = false;
    }
}

对于XAML,例如:

<ProgressRing IsActive="{Binding IsLoading}" 
              DataContext="{Binding MyDataService}" 
              Width="50" 
              Height="50" />

由于绑定(以及来自标准MS模板的BindableBase(否则您需要实现INotifyPropertyChanged))当您的数据服务正在执行某些操作时,ProgressRing将自动激活。

另一答案

ProgressBar也可用,它是类似于Windows Phone 7的水平加载栏

对于不确定的进度条,您可以使用

<ProgressBar Visibility="Visible" IsIndeterminate="True" />

以上是关于如何创建加载动画[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在Android中加载带有动画的cardview GridView?

Unity中timeline出现脚本错误怎么解决

由javascript创建的css动画[关闭]

在导航抽屉关闭之前加载片段

如何在片段中使用按钮[关闭]

VSCode自定义代码片段——CSS动画