【发布时间】:2019-11-25 07:45:39
【问题描述】:
我正在尝试清除我的 TextField,这就是我要做的
IconButton(
onPressed: (){
FocusScope.of(context).requestFocus(new FocusNode());
_searchFieldController.clear();
setState(() {
searchClicked = false;
});
},
icon: Icon(Icons.close),
);
}
当我运行它时,我得到了这个错误
I/flutter (4547): ══╡ 手势捕捉到的异常 ╞═════════════════════════════════════════════════ ══════════════════ I/flutter (4547):在处理 手势:I/flutter(4547):无效的文本选择: TextSelection(baseOffset: 6, extentOffset: 6, affinity: I/flutter ( 4547): TextAffinity.upstream, isDirectional: false)
这是我的小部件
TextField(
onChanged: (text) {
if(text.length >= 4){
searchResult = productTemp.where((i) => i.productName.contains(text.toString())).toList();
_productController.sink.add(searchResult);
}else{
_productController.sink.add(productTemp);
}
},
focusNode: _focus,
controller: _searchFieldController,
style: TextStyle(fontSize: 15),
decoration: InputDecoration(
filled: true,
hintStyle:new TextStyle(color: Colors.grey[800],fontSize: 20),
fillColor: Colors.white70,
hintText: "Search",
suffixIcon: searchClicked ? buildCancelIcon() : buildSearchIcon()
),
)
【问题讨论】:
标签: flutter