return TextField(
// something
onTap: () {
// something something
},
onChanged: (value) {
// some if else nesteing
},
)
这是我的代码,我想知道我们是否可以在相同onTap
的.onChange
TextField
简短的回答是肯定的。根据文件,
onChanged → ValueChanged<String>?
Called when the user initiates a change to the TextField's value: when they have inserted or deleted text. [...]
onTap → GestureTapCallback?
Called for each distinct tap except for every second tap of a double tap. [...]
它们都在 TextField 小部件上执行完全不同的功能。
https://api.flutter.dev/flutter/material/TextField-class.html
如果您想在用户完成输入后做某事,我建议使用延迟/去抖动器。喜欢https://gist.github.com/venkatd/7125882a8e86d80000ea4c2da2c2a8ad
final _debouncer = Debouncer(delay: const Duration(seconds: 1));
TextField(
onChanged: (_value) {
_debouncer(() {
setState(() {
print(_value);
});
});
},
);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句