Flutterカレンダコンポーネントが中国語(国際化)をサポートする方法


Flutterカレンダコンポーネントが中国語(国際化)をサポートする方法
App開発では、国際化のサポートが必要です.
Flutterはデフォルトでは国際化をサポートしていますが、特別な設定が行われないまで、どの環境でも英語で表示されます.たとえば、デフォルトでは英語で表示されるカレンダーコンポーネントを表示します.
中国語に変更したり、他の言語サポートを追加したりするにはどうすればいいですか?
言語サポート手順の設定
この例では、カレンダーコンポーネントに中国語のサポートを追加します.どうすればいいの?
1.pubspec.yamlには、次の依存関係が追加されます.
flutter_localizations:
    sdk: flutter

このステップは、国際化サポートのライブラリを追加します.
2.依存パッケージの更新
Android Studioで「Pub get」をクリックするか、次のコマンドを使用します.
flutter pub get

ライブラリを、プロジェクトにロードします.
3.main.dartのimportは以下の通りです.
import 'package:flutter_localizations/flutter_localizations.dart';

このステップはクラスライブラリをインポートします.
4.MaterialAppの構成
次に、MaterialAppの構築方法でlocalizationsDelegatesとsupportedLocalesの2つのオプションパラメータに値を割り当てます.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
        theme: ThemeData(
          primaryColor: Colors.green,
          //...
        ),
        localizationsDelegates: [
          GlobalMaterialLocalizations.delegate,//                
          GlobalWidgetsLocalizations.delegate,//   widget        ,         。
          GlobalCupertinoLocalizations.delegate,//    Cupertino   (Cupertino       iOS     )
        ],
        supportedLocales: [
          const Locale('zh', 'CH'),
          const Locale('en', 'US'),
        ],
        ……
    ……
}
  • localizationsDelegates:国際化が必要なWidgetを指定します.たとえば、この例では、Material、Widgets、Cupertinoのいずれも国際化を使用することを指定します.
  • GlobalMaterialLocalizations:ローカライズされた文字列とその他の値を指定します.
  • GlobalWidgetsLocalizations:widgetのデフォルトのテキスト方向を左から右または右から左に定義します.
  • GlobalCupertinoLocalizations:対応するCupertinoスタイル.

  • Widgetの構成
    たとえば、ここではカレンダーコンポーネントを構成し、中国語を表示します.
      _showDataPicker(int type) async {
        var picker = await showDatePicker(
            context: context,
            initialDate: DateTime.now(),
            firstDate: DateTime(1986),
            lastDate: DateTime(DateTime.now().year+2),
            locale: Locale("zh"));
        ……
        });
    

    さあ、私たちのカレンダーには中国語の構成が完了したことが表示されています.あなたもやってみてください.
    **PS:もっと素晴らしい内容、ご覧ください-->『Flutter開発』**PS:もっと素晴らしい内容、ご覧ください-->『Flutter開発』**PS:もっと素晴らしい内容、ご覧ください-->『Flutter開発』