小编Lon*_*olf的帖子

SafeArea 在模态底部工作表中被忽略

showModalBottomSheet刚刚注意到,当设置为时,顶部 SafeArea 被忽略isScrollControlled: true。(我希望我的模式适合屏幕)有人找到了修复它的方法吗?

showModalBottomSheet(
  context: context,
  isScrollControlled: true,
  builder: (context) => MyModal(),
)
Run Code Online (Sandbox Code Playgroud)

我的测试模式

class MyModal extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return SafeArea(
      child: Column(
        children: <Widget>[
          Text('Modal'),
          Expanded(
              child: Container(
            color: Colors.red,
          ))
        ],
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

输出

在此输入图像描述

我通过设置模式内容的高度暂时修复了它

SafeArea(
      child: Container(
        height: MediaQuery.of(context).size.height - 80,
        child: Column(
          children: ...
Run Code Online (Sandbox Code Playgroud)

输出

在此输入图像描述

flutter

6
推荐指数
1
解决办法
3188
查看次数

GridView 中的切换按钮

我试图将每个切换按钮放入每个 gridview 容器中。基本上,在我的代码中,我的所有切换按钮都试图适合一个网格视图容器,而不是单独的网格视图容器。有什么办法可以将这两个小部件混合在一起吗?

GridView.count(
        crossAxisCount: 2,
        physics: NeverScrollableScrollPhysics(),
        children: <Widget>[
          Padding(
            padding: const EdgeInsets.all(12.0),
            child: ToggleButtons(
              selectedColor: Colors.red,
              isSelected: selected,
              onPressed: onControlPress,
              children: <Widget>[
                Icon(Icons.info),
                Icon(Icons.title),
                Icon(Icons.info),
                Icon(Icons.info),
              ],
            ),
          ),
        ],
      ),
Run Code Online (Sandbox Code Playgroud)

dart flutter

5
推荐指数
1
解决办法
2900
查看次数

将切换按钮扩展到父容器宽度

有什么方法可以在不进行任何硬编码的情况下将切换按钮动态扩展到父容器宽度。我找到了一个使用 MediaQuery 上下文的答案,该答案仅适用于全屏宽度。我还尝试将按钮包装在展开的小部件中,但这会引发错误

Container(
  width: 150.0, // hardcoded for testing purpose 
  child: ToggleButtons(
    constraints:
        BoxConstraints.expand(width: MediaQuery.of(context).size.width), // this doesn't work once inside container unless hard coding it
    borderRadius: BorderRadius.circular(5),
    children: [
      ShapeToggleButton(
        text: 'Option1',
      ),
      ShapeToggleButton(
        text: 'Option2',
      ),
    ],
    isSelected: [true, false],
    onPressed: (index) {},
  ),
);
Run Code Online (Sandbox Code Playgroud)

dart flutter

5
推荐指数
1
解决办法
2159
查看次数

切换按钮的背景颜色

我正在尝试更改未选择的切换按钮的背景颜色。我想背景颜色现在默认设置为透明,我无法更改它。我试图用扩展的彩色容器填充按钮,但这不起作用

这是图片

在此处输入图片说明

这是代码

Container(
      child: ToggleButtons(
        borderRadius: BorderRadius.circular(5),
        selectedColor: Colors.white,
        fillColor: Colors.blue,
        //renderBorder: false,
        children: [Text('Option1'), Text('Option2'), Text('Option3')],
        isSelected: [true, false, false],
        onPressed: (d) {},
      ),
    )
Run Code Online (Sandbox Code Playgroud)

dart flutter

2
推荐指数
1
解决办法
2644
查看次数

标签 统计

flutter ×4

dart ×3