- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将当前页面的 ListTile
标记为已选中,但 2 天前我正在寻找一种通用的方法来做到这一点。
我看到像 this 这样的例子一种是硬编码 tile ID 并使用 case 来知道哪个是当前 Tile
。我的问题是,如果我有 100 个 ListTile
怎么办?如何以编程方式将 selected
属性更改为选定的 Tile
?或者更真实的情况:我有一个 Drawer
在每个版本中都会改变形状,因此保留带有硬编码 ID 的代码是没有用的。我希望你能理解这个想法。
几天来我一直在尝试不同的解决方案,但对我来说似乎没有一个足够通用。
最佳答案
像下面这样简单地创建枚举类。
enum DrawerSelection { home, favorites, settings}
如果需要,创建枚举对象并传递预定义值,在我的例子中,我将 home 作为选定的 ListTile 项目传递。就像下面的代码。
class _MyHomePage extends State<MyHomePage> {
DrawerSelection _drawerSelection = DrawerSelection.home;
然后在 ListTile 中使用 selected 属性并像下面的代码一样更改枚举 onTap()。
ListTile(
selected: _drawerSelection == DrawerSelection.home,
title: Text('Home'),
leading: Icon(Icons.home),
onTap: () {
Navigator.pop(context);
setState(() {
_drawerSelection = DrawerSelection.home;
_currentWidget = MainWidget();
_appBarTitle = Text("Home");
});
},
),
ListTile(
selected: _drawerSelection == DrawerSelection.favorites,
title: Text('Favorites'),
leading: Icon(Icons.favorite),
onTap: () {
Navigator.pop(context);
setState(() {
_drawerSelection = DrawerSelection.favorites;
_currentWidget = FavoritesWidget();
_appBarTitle = Text("Favorites");
});
},
),
ListTile(
selected: _drawerSelection == DrawerSelection.settings,
title: Text('Settings'),
leading: Icon(Icons.settings),
onTap: () {
Navigator.pop(context);
setState(() {
_drawerSelection = DrawerSelection.settings;
_currentWidget = SettingsWidget();
_appBarTitle = Text("Settings");
});
},
),
关于dart - Flutter:将 ListTile 标记为在抽屉中被选中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55669491/
目标是在点击时将前和字幕的ListTile中的值更改为空。点击会切换 _act bool(boolean) 值,但ListTile的前导和副标题值不会从其初始状态更改。我的ListView代码如下。请
我目前有一个ExpansionTile,其中有一个包含ListTile的ListView.builder。 我正在做的任务是将多个listTiles放在一个Expansiontile下。 这是文件列表
我在领先的属性中有 ListTile 和按钮。一切正常,但是如果按下按钮,那么也会激活 tile onTap 手势。 Tile onTap 不仅触发动画。 这是代码 ListTile( cont
我有一个带有 ListTile 的 ListView。每个 ListTile 都有一个带有 Text 的 title、带有 Text 的 subtitle 和 >前导与图像。 现在,图像太大,垂直延伸
在标准的 ListTile 中,是否可以将前导图像和标题对齐并置于顶部? child: ListTile( leading: FlutterLogo(size: 72.0), tit
当使用 ListTile 时,leading 属性的左右两侧会有间隙。有没有可能减少它们? child: ListTile( leading: GestureDetector(
ListTile 形状参数在 Flutter 中如何工作? ListTile( shape: RoundedRectangleBorder( borderR
我正在使用 ListTile 在抽屉导航上显示项目,但我很难创建 isSelected Color 并使用它将其应用于 onTap 但不断收到有关索引的错误并且应用程序无法识别onTap 上的 isS
我正在使用带有两个图标(前导和尾随)的 ListTile。我想知道我是否可以有两个不同的 Action 。如果我点击前导图标一个 Action ,如果我点击尾随图标另一个 Action 。 以下是我当
我有一个 flutter 的 ListTile,但我似乎无法弄清楚如何使飞溅/波纹效果适合边框。我的边框是圆角的,但飞溅只是一个没有圆形边框的普通矩形,如下图所示。 ListTile 下面是 List
尝试从 ListTile 小部件中删除左右填充,以便元素看起来更靠近边缘。我已将两侧的属性“contentpadding”设置为 0,这在纵向模式下工作正常,但当我切换到横向时,填充仍然可见。我在下面
我现在正在研究更多小时,但不明白为什么不能将图像和带有一堆 ListTiles 的卡片放在一行中。我得到的错误是: 在 performLayout() 期间抛出了以下断言:BoxConstraints
我正在尝试在ListTile的开头部分和标题之间添加垂直分隔符。 我了解Flutter现在具有VerticalDivider小部件,但我似乎无法使其与ListTile一起正常工作。附上我要尝试的示例。
我刚开始使用 Flutter,只是在尝试一些东西。 我设置了一个自定义主题,但是 ListTile 的 title 属性下的 Text Widgets 没有获得正确的颜色。此外,领先属性下的图标也没有
我到处搜索,但找不到改变 ListTile 背景颜色的方法,例如当它被用户点击时。 对于看似常见的用例,有人有解决方案吗? 最佳答案 更改 ListTile 的背景颜色, 你可以简单地将它包装在 Co
这是我在屏幕上看到的内容: https://i.imgur.com/oSblgWD.png 如何对齐姓氏使其位于名字下方?我不想在姓氏旁边放置图标,只在名字旁边放置图标。 这是我的代码。谢谢。
我正在尝试从 json 文件中接收一些数据,然后将这些数据映射到我的“Json”类字段中。 有没有办法将我的 Json 类中的字段用作我的 ListTile 属性? 例如: Json json1 =
所以这看起来很基本,但我无法弄清楚。我有一个 ListTile,它有一个前导复选框、一个标题和一个尾随图标。在上一次 Flutter 更新中,出于某种原因,复选框和图标不再居中。我希望它们垂直居中。我
我在学习Flutter的过程中摸索着,到目前为止,我想做的事情已经很成功了,但是这个问题一直很困扰。 我有一个项目的 ListView,我希望能够让用户长按一个项目,然后从一对命令中进行选择。我真的找
我正在制作设置页面并希望制作类似 iOS 设置(灰色背景和白色瓷砖)。我正在尝试添加 Container,以便可以向 ListTile 添加颜色,但总是出错。 有人知道如何在这里添加容器吗? bo
我是一名优秀的程序员,十分优秀!