【发布时间】:2020-08-05 20:52:51
【问题描述】:
这是我的代码
class TitleGreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
double width = MediaQuery.of(context).size.width;
double height = MediaQuery.of(context).size.height;
print('title green buile');
return Positioned(
key: UniqueKey(),
top: 0.0,
child: GestureDetector(
onTap: () {
Provider.of<MoveDetailsDesVisibility>(context)
.setViisibility(1, context);
},
child: AnimatedContainer(
key: UniqueKey(),
duration: Duration(seconds: 0),
padding: EdgeInsets.only(
top: Provider.of<MoveDetailsDesVisibility>(context)
.des2visibility
? (1 / 4) * height + 225
: (1 / 4) * height + 115),
height: Provider.of<MoveDetailsDesVisibility>(context)
.des2visibility
? (1 / 4) * height + 260
: (1 / 4) * height + 150,
//150
width: (3 / 4) * width - 11.5,
decoration: BoxDecoration(
color: Color(0xFF24DC25),
borderRadius:
BorderRadius.only(bottomLeft: Radius.circular(30))),
child: Column(
children: <Widget>[
Row(
children: <Widget>[
SizedBox(
width: 5,
),
Transform.rotate(
key: UniqueKey(),
angle: Provider.of<MoveDetailsDesVisibility>(context)
.des2visibility?-80:0,
child:
Image.asset(
'assets/icons/faNote.png',
fit: BoxFit.cover,
width: 20,
height: 20,
)),
SizedBox(
width: 9,
),
Text(
'توضیحات مربی',
style: TextStyle(
color: Colors.white,
fontSize: 14,
fontWeight: FontWeight.bold),
)
],
),
],
),
)));
}
}
在这段代码中,当我更新提供者并更改提供者的值时,调用了这个小部件类并调用了构建方法,但是这个检查“des2visibility”的值是否为假或真的编码不要调用并且图像小部件在整个过程中不转换在不正确的地方构建的小部件我与消费者一起测试并获取整个小部件键值但不起作用
【问题讨论】:
-
你能添加你的提供者类吗?
-
在哪里以及如何?请解释一下
-
我的意思是在此处添加 MoveDetailsDesVisibility 类。
-
“当我更新提供者时”是什么意思?您的意思是当您调用“setViisibility”时?另外,你确定你没有忘记调用 notifyListeners() 吗?
-
pskink 说什么我不想要动画。
标签: flutter provider state-management