如何在Flutter应用中以阿拉伯格式显示数字?
不是将数字显示为1,2,3,而是将它们显示为١、٢、٣
我尝试使用NumberFormat类,但是它不起作用。
Flutter Doctor:
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel dev, v0.8.2, on Microsoft Windows [Version 10.0.17134.345], locale ar-SA)
[√] Android toolchain - develop for Android devices (Android SDK 28.0.2)
[√] Android Studio (version 3.1)
[√] IntelliJ IDEA Community Edition (version 2018.2)
[!] VS Code, 64-bit edition (version 1.27.2)
[√] Connected devices (2 available)
! Doctor found issues in 1 category.
示例:
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:intl/intl.dart';
void main() => runApp(new MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
locale: Locale("ar"),
home: new Scaffold(
body: new Center(
child: new Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
new Text(NumberFormat().format(1)),
new Text(NumberFormat().format(2)),
new Text(NumberFormat().format(3)),
],
),
),
),
);
}
}
答案 0 :(得分:2)
答案 1 :(得分:0)
此软件包将为您完成
arabic_numbers
https://pub.dev/packages/arabic_numbers
答案 2 :(得分:0)
String convertToArabicNumber(String number) {
String res = '';
final arabics = ['٠', '١', '٢', '٣', '٤', '٥', '٦', '٧', '٨', '٩'];
number.characters.forEach((element) {
res += arabics[int.parse(element)];
});
/* final latins = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']; */
return res;
}