gpt4 book ai didi

dart - 在手势检测器中有多个 SetStates()?

转载 作者:IT王子 更新时间:2023-10-29 06:45:42 25 4
gpt4 key购买 nike

我无法从 onTap VoidCallback 获取多个区域的设置状态更改?

我在不同的有状态小部件中有两个 AnimationController。我想要实现的是,如果 controller1.value == 0.0 那么它会确保在 onTap 时 controller2.value == 1.0,反之亦然,如果 controller1.value == 1.0。

StatefulWidget底层(将widget.onTapOpen/closed传递给顶层)

onTap: () {
_toggleExpandingSheetPanelVisibility();
setState(() {
if (_controller1.value == 0.0){
widget.onTapOpen();
}
else if (_controller1.value == 1.0){
widget.onTapClosed();
}
});
},

StatefulWidget顶层

onTapOpen: _ensureVisible,
onTapClosed: _ensureInvisible,

void _ensureVisible() {
setState(() {
if (_controller2.value == 0.0) {
_toggleVisibility();
}
});
}

void _ensureInvisible() {
setState(() {
if (_controller2.value == 1.0) {
_toggleVisibility();
}
});
}

最佳答案

它在 if (_controller2.value > 时起作用或 < 0.5)然后它会切换可见性。

关于dart - 在手势检测器中有多个 SetStates()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54091520/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com