如何在单击按钮时从GridView切换到ListView?

问题描述 投票:0回答:1

我正在构建墙纸应用程序,并希望实现切换视图的功能,例如在按FLutter中的“ IconButton”时从“ GridView”切换到“ ListView”

看起来像这样:

我想实现此功能的唯一方法是通过将计数器连接到'crossAxisCount'属性并通过单击函数来控制它来更改'GridView.count()'方法中的'crossAxisCount'值。一个“ IconButton”,它可以工作,但是每次计数器增加或减少时,我都必须热重载我的应用程序,

欢迎任何建议或解决此问题。

flutter flutter-layout flutter-dependencies flutter-animation flutter-web
1个回答
0
投票
您可以简单地使用三元运算符和setState()来实现所需的功能。首先,在widget build上方声明一个布尔值。然后,您可以使用三元运算符将其从gridview更改为listview。

bool isGridView=true; @override Widget build(BuildContext context) { Scaffold( body: isGridView ? GridView.builder():ListView.builder(), ); }

在您的onPressed()中,您可以调用setState()

setState(() { isGridView=false; });

© www.soinside.com 2019 - 2024. All rights reserved.