Flutter 是 Google 开发的一个开源 UI 工具包,用于构建跨平台的应用程序。它使用 Dart 语言编写,可以一次性构建在 iOS 和 Android 平台上的高质量应用程序。
Flutter 应用程序可以分为以下几种类型:
Flutter 适用于各种类型的应用程序,包括但不限于:
以下是一个简单的 Flutter 示例,展示如何向用户显示总分和级别:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('总分/级别显示'),
),
body: Center(
child: ScoreDisplay(score: 85),
),
),
);
}
}
class ScoreDisplay extends StatelessWidget {
final int score;
ScoreDisplay({required this.score});
String get level {
if (score >= 90) {
return 'A';
} else if (score >= 80) {
return 'B';
} else if (score >= 70) {
return 'C';
} else if (score >= 60) {
return 'D';
} else {
return 'F';
}
}
@override
Widget build(BuildContext context) {
return Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text('总分: $score'),
SizedBox(height: 20),
Text('级别: $level'),
],
);
}
}
原因:Flutter 默认使用 Arial 字体,而 Arial 字体不支持中文字符。
解决方法:
pubspec.yaml
文件中添加中文字体依赖:flutter:
fonts:
- family: 'NotoSansCJKsc'
fonts:
- asset: assets/fonts/NotoSansCJKsc-Regular.otf
assets/fonts
目录下。ScoreDisplay
组件中使用该字体:Text(
'总分: $score',
style: TextStyle(fontFamily: 'NotoSansCJKsc'),
)
通过以上步骤,你应该能够成功在 Flutter 应用中显示中文。
领取专属 10元无门槛券
手把手带您无忧上云