我正在尝试计算消息传递应用程序的 TextField
中的字符数。如果消息正文包含任何 Unicode
字符,则每条消息的总长度为 70 个字符,否则为 160 个字符。
最佳答案
string.codeUnits 是 Unicode UTF-16 代码单元的数组。 所以我想说它可能就像
int maxLengthOfTextField(String text){
final int maxBits = 128;
List<int> unicodeSymbols = text.codeUnits.where((ch) => ch > maxBits ).toList();
return unicodeSymbols.length > 0 ? 160 : 70;
}
final textFieldController = TextEditingController();
TextField(
controller: textFieldController,
maxLength: maxLengthOfTextField(textFieldController.text)
);
关于dart - 如何在 flutter/dart 中检查 TextField 是否包含 unicode 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55607305/