Ton*_*ado 8 string-interpolation character-codes flutter
有时,我需要在 Flutter Text 小部件中添加一个不间断的空格,例如“显示更多”链接或带有“50 km/h”等单位的数字。
下面的代码工作正常,但看起来过于复杂:
const int $nbsp = 0x00A0; // from https://pub.dev/packages/charcode
print('Hello${String.fromCharCode($nbsp)}World'); // --> prints "Hello World", does not break
//          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ :/
我很好奇是否有更短的方法可以在我的插值字符串中使用charcode 包中的整数常量?
小智 22
最简单的方法是使用转义组合 [\u{00A0}]:
Text('Hello\u{00A0}world');
Ton*_*ado 19
我想出的最佳解决方案是创建一个字符串扩展方法。
// string_extension.dart
const int $nbsp = 0x00A0;
extension StringExtension on String {
  String get nonBreaking => replaceAll(' ', String.fromCharCode($nbsp));
}
使用示例:
// import 'string_extension.dart';
Text('Hello World'.nonBreaking)
| 归档时间: | 
 | 
| 查看次数: | 5023 次 | 
| 最近记录: |