TabController 初始化之后 长度发生变化报错
来源:12-16 加载进度条与下拉刷新的实现【实战应用】
东方蓂荚
2019-10-22
老师,我在initstate中初始化了tabcontroller,刷新数据的时候 数据发生了变化,tabbar和tabbarview中的数据减少了 但是Tabcontroller的length好像改不了 报长度和内容不匹配的错误。重新new了一个Tabcontroller 好像因为是final类型的变不了,请问这块我应该怎么处理。
this._tabController =
new TabController(vsync: this, length: trucknos.length);
this._tabController.addListener(() => _handleRefresh());
写回答
1回答
-
CrazyCodeBoy
2019-10-23
可参考:
class _TravelPageState extends State<TravelPage> with TickerProviderStateMixin { TabController _controller; List<TravelTab> tabs = []; TravelTabModel travelTabModel; @override void initState() { _controller = TabController(length: 0, vsync: this); TravelTabDao.fetch().then((TravelTabModel model) { _controller = TabController( length: model.tabs.length, vsync: this); //fix tab label 空白问题 setState(() { tabs = model.tabs; travelTabModel = model; }); }).catchError((e) { print(e); }); super.initState(); }
112019-10-26
相似问题