gpt4 book ai didi

dart - 如何在flutter中重用同一小部件​​的内容?

转载 作者:行者123 更新时间:2023-12-03 02:40:33 26 4
gpt4 key购买 nike

我想在多个地方使用同一个小部件实例,一个地方的变化会同步到另一个地方。

但是在多个地方使用同一个实例看起来就像多个不同的实例。

那么我怎样才能实现这一壮举呢?

  var test = InAppWebView(
// ...
);

Widget build(BuildContext context) {
return Scaffold(
body: PageView(
children: [
test, // widget one
test, // widget two
],
controller: _pageController,
physics: NeverScrollableScrollPhysics(),
onPageChanged: onPageChanged,
),
),
}

I'm use flutter_inappbrowser.



小部件一和小部件二使用相同的实例,但是当我用小部件一打开网页时,小部件二不受影响。

我希望小部件一和小部件二是同一个小部件,当小部件一改变时,小部件二也会受到影响。

最佳答案

创建另一个类并返回类型,如您所需的小部件:

与我在各种类中需要的 customButton 相关的示例:

 Widget customButton(title,context,ResponseCallback callBack,shadowColor) {
return Container(
margin: EdgeInsets.only(top: 20),
height: 80,
width: 150,
decoration: BoxDecoration(
color: Colors.blue,
borderRadius: BorderRadius.circular(75),
boxShadow: [
BoxShadow(
spreadRadius: 1,
blurRadius: 4,
offset: Offset(4, 3),
color: shadowColor
)
]
),
child: FlatButton(
onPressed: () {
callBack(title);
},
child: Text(title,
style: TextStyle(
color: Colors.white,
fontSize: 20,
fontWeight: FontWeight.bold)),
),
);
}

用过的:
child: customButton(
comparedArray[index].category, context, buttonCallHandle,Colors.black),),



buttonCallHandle(e) {
dynamic instanceUpdated = instance.where((element) => element.category == e).toList();
Navigator.of(context).pushNamed('/choice', arguments: instanceUpdated);

}

关于dart - 如何在flutter中重用同一小部件​​的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56233729/

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