Xamarin,Android:动画定时器文本在1秒后停止

时间:2017-12-05 11:46:15

标签: c# xamarin.android

在我的应用程序中,我有一个简单的TextView,可以计算动画下的数字。由于动画师类doenst有任何可以做到的事情,我使用计时器创建了自己的动画。基本上,每当计时器结束时(每隔0.01秒),我的文本视图上显示的整数将减去其自身的10,然后再次将其显示在文本视图上。这看起来像这样:

    private void CountHOFNumbers()
    {

        int intHofNumber = 999999;

        System.Timers.Timer timer = new System.Timers.Timer();

        timer.Interval = 10;
        timer.Elapsed += delegate
        {
            intHofNumber -= 10;
            txtHof.Text = "# " + formatAp(intHofNumber);
        };
        timer.Enabled = true;
        timer.Start();

    }

它确实有效,但在一个秒后定时器停止。应用程序崩溃,它只是不再倒计时。此外,它永远不会是它停止的完全相同的数字 - 有时它是999,913 - 那么它是999,324等等。但它的运行时间不会超过1.5秒。这真让我烦恼。另外,我的手机正在从另一个线程振动。当振动开启时,计时器似乎总是停止。他们有相关的机会吗?或者我只是做错了?我很乐意帮忙!谢谢!

1 个答案:

答案 0 :(得分:0)

这是解决方案:

RunOnUiThread(() => txtHof.Text = "# " + formatAp(intHofStartNumber));
但是,我已经开始了,它开始然后停止了。它本不应该开始,但无论如何 - 这解决了我的问题:)