1、MainPage.xaml.cs 代码
using System.Threading;
namespace Mauitime
{
public partial class MainPage : ContentPage
{
private Timer _timer;
public MainPage()
{
InitializeComponent();
_timer = new Timer(_ => UpdateCurrentTime(), null, 0, 1000);
}
// 在页面显示时更新当前时间
protected override void OnAppearing()
{
base.OnAppearing();
}
protected override void OnDisappearing()
{
base.OnDisappearing();
_timer?.Dispose(); // 确保计时器在页面消失时被释放
}
// 更新当前时间
void UpdateCurrentTime()
{
// 使用 MainThread 更新 UI
MainThread.BeginInvokeOnMainThread(() =>
{
currentTimeLabel.Text = DateTime.Now.ToString("HH:mm:ss");
});
}
}
}
2、MainPage.xaml代码
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Mauitime.MainPage">
<StackLayout Padding="20">
<Label Text="当前时间:" FontSize="20" />
<Label x:Name="currentTimeLabel" FontSize="24" />
</StackLayout>
</ContentPage>
3、显示效果