我在循环的每次迭代中都尝试了Thread.Sleep(1000)
,但infoLabel.Text
直到循环结束才改变。它在标签中改变。调用Thread后发送文本。睡3次。请建议。这是我的代码。
void Handle_Touchdown(object sender, EventArgs e)
{
for(int i = 0; i < 10; ++i )
{
infoLabel.Text = i.ToStraing();
Thread.Sleep(1000);
}
}
您最好实现NSTimer
并增加计数。可能的代码如下:
void Handle_Touchdown(object sender, EventArgs e)
{
NSTimer timer;
int counter = 0;
timer = NSTimer.CreateRepeatingScheduledTimer(1, delegate{
if (counter != 10)
{
counter++;
infoLabel.Text = i.ToString();
}
else
timer.Invalidate() // stop the timer
});
}