镜像 MainMenuP0 包样例

This commit is contained in:
JSD\13999
2026-06-04 20:16:28 +08:00
parent 3b3957fb74
commit ac8fcc3c24
29 changed files with 1548 additions and 2 deletions

View File

@@ -0,0 +1,45 @@
using System.Threading.Tasks;
using FlowScope.Flow;
using FlowScope.UI;
namespace FlowScope.Samples.MainMenuP0
{
public sealed class MainMenuFeature : FeatureBase
{
private readonly IUIScreenNavigator _screenNavigator;
private readonly PlayerData _playerData;
private MainMenuViewModel _viewModel;
public MainMenuFeature(IUIScreenNavigator screenNavigator, PlayerData playerData)
{
_screenNavigator = screenNavigator;
_playerData = playerData;
}
public override Task LoadAsync(FeatureContext context)
{
base.LoadAsync(context);
_viewModel = new MainMenuViewModel(_playerData);
return Task.CompletedTask;
}
public override async Task EnterAsync(FeatureContext context)
{
await _screenNavigator.PushAsync<MainMenuPanel, MainMenuViewModel>(
_viewModel,
context.CancellationToken);
}
public override Task ExitAsync(FeatureContext context)
{
_screenNavigator.Clear();
return base.ExitAsync(context);
}
public override void Dispose()
{
_viewModel = null;
base.Dispose();
}
}
}