【发布时间】:2021-04-22 03:46:14
【问题描述】:
当我尝试从 tab1 更改 tab2 的状态时遇到问题
为此,我已经有 tab1 和 tab2 的类来保存用户数据:
AutomaticKeepAliveClientMixin<...>{...}
...
@override
bool get wantKeepAlive => true;
问题是当用户更改 tab1 中的选项时,您只需要更改 tab2 的状态(不重建),仅用新数据更新列表变量
我创建了一个 tabcontroller,以便 tab2 在用户访问该视图时更改其状态但它不起作用
class _medState extends State<HomeMed> with SingleTickerProviderStateMixin{
TabController _tabController;
var _context;
@override
void initState() {
super.initState();
_tabController = TabController(vsync: this, length: 2);
_tabController.addListener(_handleTabSelection);
}
void _handleTabSelection() {
if (_tabController.indexIsChanging) {
switch (_tabController.index) {
case 1: //tab2
setState(() {
}); //this not update tab2 view
break;
}
}
}
@override
void dispose() {
_tabController.dispose();
super.dispose();
}
...
【问题讨论】:
标签: flutter flutter-layout flutter-dependencies flutter-web flutter-animation