flutter - 如何从子小部件调用 setState*
问题描述
我有带 3 个选项卡的 DefaultTabController。选项卡之一是列表。我需要在单击列表项时,在其他小部件上更改当前列表。我该怎么做呢?谢谢你。选项卡状态类
class StationState extends State<Stations> {
Widget secondWidget;
@override
Widget build(BuildContext context) {
secondWidget = Styles(this);
return DefaultTabController(
length: 3,
child: Scaffold(
backgroundColor: Color(0xFF000000),
appBar: AppBar(
title: HeaderLogo(),
backgroundColor: Color(0xFF000000),
bottom: TabBar(
indicatorColor: Colors.white,
tabs: [
Tab(
text: 'Favorites',
),
Tab(
text: 'Genres',
),
Tab(
text: 'Networks',
),
],
),
),
body: TabBarView(children: [
Favorites(),
secondWidget,
Networks(),
]),
),
);
;
}
}
解决方案
请添加您的代码以更好地帮助您。
但是您可以将回调传递给列表项,当单击列表项时,会触发回调。
像这样的东西
return ListItem(
onPressed: () {
setState((){
//Do what you need on the parent
});
}
);
推荐阅读
- email - OpenProject 电子邮件通知邮件内没有图片
- android - 无法在 Android 中使用我自己的启动器接听 Skype 来电
- google-apps-script - 使用 Google App Script 创建新的幻灯片请求并修改创建的布局
- php - 使用 unserialize() 在控制台请求中反序列化会话数据?
- azure - 如何调试 Azure 应用服务上的启动错误
- python - 如何在 vs 代码中缩进 jupyter 单元格/块
- ios - 自定义管理使用其他证书和配置文件进行签名
- javascript - Handlebars.js 使用 Json 填充下拉列表/子导航
- intellij-idea - 如何自动完成表达式/等式的左侧部分
- docker - 如何访问 docker 镜像 influxdb