[英]Long Press Detector with c# in xamarin.forms
我正在制作一個簡單的計算器應用程序,其中的DEL按鈕可刪除視口中的最后一位,但是如果按住一秒鍾,它將刪除視口中的所有內容。 現在,如果我按一次按鈕,則無論我是否按下它都會刪除最后一個數字。 如果再次將其按下(按住或只是定期點按一下),它將清除視口中的所有內容,而我無法輸入其他任何內容。
首先,我像這樣創建計時器:
public System.Timers.Timer timer = new System.Timers.Timer(1);
然后我有一個按下“ DEL”按鈕時的功能:
private void DeletePressed(object sender, EventArgs args)
{
timer.Stop();
timer.Start();
timer.Elapsed += AllClear;
}
釋放按鈕時停止計時器並從視口刪除最后一個字符的功能:
private void DeleteReleased(object sender, EventArgs args)
{
timer.Stop();
if (CalculatorString.Length > 0)
{
CalculatorString = CalculatorString.Remove(CalculatorString.Length - 1);
}
viewport.Text = CalculatorString;
}
最后是計時器結束時調用的過程:
private void AllClear(Object Source, System.Timers.ElapsedEventArgs e)
{
timer.Stop();
CalculatorString = "";
viewport.Text = CalculatorString;
}
但是我沒有想到會發生任何事情。 我感謝任何提前的幫助:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.