我正在使用bloc将数据输入到textField并将其存储在变量中。在将侦听器添加到流后,我不断收到错误消息:“类型'_ControllerSubscription'不是类型'流'的子类型。”
UI:
/****/ Widget build(BuildContext context) { Size size = MediaQuery.of(context).size; var bloc = Bloc(); return Container( color: Colors.white, child: Column(children: <Widget>[ SizedBox(height: size.height *.2 ,), StreamBuilder( stream: bloc.textStream, builder: (context, snapshot ){ return Container( width: size.height * .5, height: size.height *.2, child: TextField( onChanged: bloc.changeText, textAlign: TextAlign.right, decoration: InputDecoration( hintStyle: TextStyle( fontSize: 14, color: Colors.black, ),), /**** *****/
集团:
import 'dart:async'; class Bloc { var _text=''; final _textFieldController = StreamController<String>(); get textStream => _textFieldController.stream .listen( (value){_text = value;}); Function(String) get changeText => _textFieldController.sink.add; void dispose() { _textFieldController.close(); } }
我正在使用bloc将数据输入到textField并将其存储在变量中。我不断收到错误:添加...
尝试替换
get textStream => _textFieldController.stream
.listen( (value){_text = value;});