颤振,如何摆脱提升按钮的底边距?

时间:2019-08-26 09:47:22

标签: flutter dart

因此,我正在尝试删除凸起按钮的底边,因此它看起来像是与它下面的卡合并了。 这是here

的样子

这是我的代码

Expanded(
          child: Card(
            elevation: 5,
            // shape:
            //     RoundedRectangleBorder(borderRadius: BorderRadius.circular(22)),
            child: Column(
                children: <Widget>[
                  Row(
                    children: <Widget>[
                      Padding(
                        padding: const EdgeInsets.all(8.0),
                        child: Text("Apakah anak sudah bisa ... ?",
                            style: TextStyle(fontWeight: FontWeight.bold)),
                      ),
                    ],
                  ),
                  Row(
                    children: <Widget>[
                      Expanded(
                        child: RaisedButton(
                            child: Text(
                              "Iya",
                              style: TextStyle(color: Colors.white),
                            ),
                            color: Colors.green[300],
                            onPressed: () {}),
                      ),
                      Expanded(
                          child: RaisedButton(
                              child: Text(
                                "Tidak",
                                style: TextStyle(color: Colors.white),
                              ),
                              color: Colors.red[200],
                              onPressed: () {}))
                    ],
                  )
                ],
              ),
          ),
        )

还是你们有其他替代解决方案来实现这一目标?

2 个答案:

答案 0 :(得分:1)

您可以明确设置Row的高度以匹配RaisedButton的高度。只需将其包装在Container中并添加height属性即可。

如果需要,可以使用Theme.of(context).buttonTheme.height访问默认高度。 Theme.of返回当前上下文中使用的ThemeData

这是一个最小的例子:

Demo

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
          body: Center(
        child: Container(
          child: Card(
            child: Column(
              mainAxisSize: MainAxisSize.min,
              children: <Widget>[
                Text('Test'),
                Container(
                  height: Theme.of(context).buttonTheme.height,
                  child: Row(
                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
                    children: <Widget>[
                      RaisedButton(
                        onPressed: () {},
                        child: Text('Yes'),
                        color: Colors.green,
                      ),
                      RaisedButton(
                        onPressed: (){},
                        child: Text('No'),
                        color: Colors.red,
                      )
                    ],
                  ),
                ),
              ],
            )
          ),
        ),
      )),
    );
  }
}

答案 1 :(得分:0)

我有同样的问题。不幸的是,NikasPor的回答对我没有用。我修复它的方法是在.stretch

的行上看到crossAxisAlignment
Row(
   crossAxisAlignment: CrossAxisAlignment.stretch,
   children:[ /* Buttons Here */]
)