17 lines
521 B
Dart
17 lines
521 B
Dart
|
|
import 'package:flutter/material.dart';
|
||
|
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||
|
|
|
||
|
|
/// App 语言设置(脚手架)。
|
||
|
|
///
|
||
|
|
/// `null` = 跟随系统;Task 10 补齐:持久化(settings 存储)、
|
||
|
|
/// 设置页交互与全部页面的 l10n 覆盖检查。
|
||
|
|
class LocaleSettings extends Notifier<Locale?> {
|
||
|
|
@override
|
||
|
|
Locale? build() => null;
|
||
|
|
|
||
|
|
void setLocale(Locale? locale) => state = locale;
|
||
|
|
}
|
||
|
|
|
||
|
|
final localeSettingsProvider =
|
||
|
|
NotifierProvider<LocaleSettings, Locale?>(LocaleSettings.new);
|