如何在 Flutter 的选项卡视图上启用禁用编辑模式
How to enable disable edit mode on tabs view in Flutter
我想为 selected 选项卡中的某些元素启用 "edit" 模式,问题是
如果我在 appBar 菜单中使用编辑按钮,我会为所有选项卡启用编辑模式,而不仅仅是 selected。
当用户 select 选项卡并从 appBar 单击编辑时,我想 s 查看该选项卡的编辑模式,然后保存到 s 返回。如果用户通过单击其他选项卡或滑动在编辑过程中退出,我想再次显示非编辑选项卡。
我正在调用这个来回编辑 btn。
void _editModeCall(String u) {
setState(() {
_editMode = true;
});
}
然后我得到了五个这样的标签:
firstTab(){
if(_editMode){
return _editmodeView();
}else{
return _defoultView();
}
}
并在保存 btn 时瞄准 sing bool _editMode,这是有效的,但这样我在所有选项卡上启用 "editMode",而不仅仅是 selected。
如何获取索引或以其他方式了解 选项卡上的用户并仅为该选项卡启用编辑视图?
您可以为此使用 TabController
class。您可以创建一个新的 TabBar
小部件并向其附加 TabController
:
_tabController = new TabController(length: 3, vsync: this);
TabBar(controller: _tabController);
然后要获取当前索引,调用_tabController.index
。然后使用 setState()
调用并仅更改可见 TabBarView
页面的 State
。
参考:https://api.flutter.dev/flutter/material/TabController-class.html
我想为 selected 选项卡中的某些元素启用 "edit" 模式,问题是 如果我在 appBar 菜单中使用编辑按钮,我会为所有选项卡启用编辑模式,而不仅仅是 selected。
当用户 select 选项卡并从 appBar 单击编辑时,我想 s 查看该选项卡的编辑模式,然后保存到 s 返回。如果用户通过单击其他选项卡或滑动在编辑过程中退出,我想再次显示非编辑选项卡。
我正在调用这个来回编辑 btn。
void _editModeCall(String u) {
setState(() {
_editMode = true;
});
}
然后我得到了五个这样的标签:
firstTab(){
if(_editMode){
return _editmodeView();
}else{
return _defoultView();
}
}
并在保存 btn 时瞄准 sing bool _editMode,这是有效的,但这样我在所有选项卡上启用 "editMode",而不仅仅是 selected。
如何获取索引或以其他方式了解 选项卡上的用户并仅为该选项卡启用编辑视图?
您可以为此使用 TabController
class。您可以创建一个新的 TabBar
小部件并向其附加 TabController
:
_tabController = new TabController(length: 3, vsync: this);
TabBar(controller: _tabController);
然后要获取当前索引,调用_tabController.index
。然后使用 setState()
调用并仅更改可见 TabBarView
页面的 State
。
参考:https://api.flutter.dev/flutter/material/TabController-class.html