我希望用戶可以在我的文本欄位中輸入不超過 100 個。如果用戶輸入超過 100 -- 比如說 123--,文本將顯示 100 而不是 123。
這是我的代碼
TextField(
controller: qtyController,
keyboardType: TextInputType.number,
onTap: () => qtyController.text = '',
inputFormatters: [FilteringTextInputFormatter. digitsOnly,
LengthLimitingTextInputFormatter(3),
],
textAlign: TextAlign.center,
style: TextStyle(color: Colors.white),
)
uj5u.com熱心網友回復:
您可以使用onChanged回呼來監聽更改
TextField(
controller: qtyController,
keyboardType: TextInputType.number,
onTap: () => qtyController.text = '',
onChanged: (val){
if(int.parse(val)>=100) {
qtyController.text = "100";
}
},
inputFormatters: [
FilteringTextInputFormatter.digitsOnly,
LengthLimitingTextInputFormatter(3),
],
textAlign: TextAlign.center,
style: TextStyle(color: Colors.white),
)
uj5u.com熱心網友回復:
最簡單的方法是向onChanged()TextField 或 TextFormField提供回呼。每當文本更改時,都會呼叫回呼。
一種更強大但更復雜的方法是提供 aTextEditingController作為 TextField 或 TextFormField 的控制器屬性。
這里的詳細資訊:https : //docs.flutter.dev/cookbook/forms/text-field-changes
uj5u.com熱心網友回復:
您可以使用該maxLength屬性設定 .csv 檔案中允許的最大字符數TextField。在此處閱讀更多相關資訊。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/382590.html
