我刚开始学习Dart和Flutter,为了开始,我想开发一个充当服务器的应用程序(我们从 telnet
发送消息) .
所以目前,我有以下两个类:
class HomeScreen extends StatefulWidget {
@override
_HomeScreenState createState() => new _HomeScreenState();
}
class _HomeScreenState extends State<HomeScreen> {
List<String> _messages = <String>[];
...
}
正如我所说,该应用程序将作为服务器运行 . 我想在每次服务器收到消息时更新列表 _messages
.
我想从另一个类更新它,让我们称之为 Server
,我称之为 HomeScreen.addMessage(String message)
,我也想保持 _HomeScreenState
私有 .
我搜索了很多时间寻找解决方案,但没有找到适合我需求的东西 .
你们能帮助我吗?
提前谢谢了!
1 回答
您可以让
State
订阅Stream
条消息 .注意:如果您希望即使用户访问其他屏幕也能保持
Server
类,也可以拥有List
消息 . 您仍然需要Stream
或其他通知回调才能让State
知道列表已更改 .