为什么单击的按钮不翻译容器?

问题描述 投票:0回答:1

我正在尝试使用按钮来翻译​​容器。对于容器在上升之后再下降的某种原因,当第三次单击该按钮时,什么也没有发生。此循环重复进行,因此每三次单击都不符合预期。

在课堂上,我已经声明了这个

double windowHeight;
double historyContainerHideTranslation;
double historyContainerShowTranslation;

在构造函数中,我有

windowHeight = DeviceDisplay.MainDisplayInfo.Height;

historyContainerHideTranslation = windowHeight * .07;
historyContainerShowTranslation = windowHeight * -.11;

HistoryContainer.TranslationY = historyContainerHideTranslation;

和方法...

void HistoryBtnHandler(object sender, EventArgs e)
{
    Console.WriteLine("  before if height =>  " +   HistoryContainer.TranslationY);


    if (HistoryContainer.TranslationY == historyContainerHideTranslation)
    {
        HistoryContainer.TranslateTo(0, historyContainerShowTranslation, 250, Easing.SinOut);
        HistoryContainer.TranslationY = historyContainerShowTranslation;

        Console.WriteLine("if stmnt height +>  " + HistoryContainer.TranslationY);

        }
        else
        {
            HistoryContainer.TranslateTo(0, historyContainerHideTranslation, 250, Easing.SinIn);

            HistoryContainer.TranslationY = historyContainerHideTranslation;
            Console.WriteLine("else stmnt height +>  " + HistoryContainer.TranslationY);
        }

        Console.WriteLine("after stmts height +>  " + HistoryContainer.TranslationY);

}
c# xamarin xamarin.forms event-handling click
1个回答
0
投票

比较关系数时,使用Math.Round()舍入每个数字以指定要保留的小数点后的位数。在这种情况下,当数字四舍五入到一位数字时,它们将是相同的。

© www.soinside.com 2019 - 2024. All rights reserved.