【问题标题】:How to make a small rounded rectangle in Flutter如何在 Flutter 中制作一个小圆角矩形
【发布时间】:2019-06-12 04:16:30
【问题描述】:

我的小部件的红色矩形中心太大,无法响应宽度和高度参数。

我已经更新了flutter和android studio。我从一个圆形的容器开始,然后我使用了一个扁平按钮并给它一个形状。但是当它变成矩形时,它的大小与它调整大小的圆的大小相同。_isRecord 是一个布尔值,当按下按钮时会切换。

return Container(
  width: 80.0,
  height: 80.0,
  child: Container(
    child: FlatButton(
      onPressed: _press,
     ),
    decoration: new BoxDecoration(
      color: Colors.red,
      shape: _isRecording ? BoxShape.rectangle : BoxShape.circle,
      borderRadius: _isRecording ? BorderRadius.all(Radius.circular(8.0)) : null,
    ),
  ),
  decoration: new BoxDecoration(
    color: Colors.black,
    shape: BoxShape.circle,
    border: Border.all(width: 5.0, color: Colors.white),
  ),
);

它的外观和功能应该类似于语音备忘录的录制按钮。它应该是一个带有红色中心的白色圆圈笔划,按下后会变成一个较小的圆角矩形。

【问题讨论】:

    标签: dart flutter


    【解决方案1】:

    您可以在Padding 中使用您的小部件

    考试:

        InkWell(
          splashColor: Colors.transparent,
          highlightColor: Colors.transparent,
          onTap: () {
            setState(() {
              _isRecording = !_isRecording;
            });
          },
          child: DecoratedBox(
            decoration: BoxDecoration(
              shape: BoxShape.circle,
              border: Border.all(width: 5.0, color: Colors.white),
            ),
            child: Padding(
              padding: EdgeInsets.all(32.0),
              child: Container(
                width: 40.0,
                height: 40.0,
                child: Container(
                  decoration: new BoxDecoration(
                    color: Colors.red,
                    shape:
                        _isRecording ? BoxShape.rectangle : BoxShape.circle,
                    borderRadius: _isRecording
                        ? BorderRadius.all(Radius.circular(8.0))
                        : null,
                  ),
                ),
              ),
            ),
          ),
        )
    

    【讨论】:

    • 如果我不清楚,我很抱歉。这就是我得到的:imgur.com/8wa1KbU 但我试图使中心正方形小于笔划。像这样:imgur.com/PPEzRf8
    • 经过几次编辑就完美了。我需要做的就是改变最里面容器的填充和大小。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2019-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-11
    • 2018-10-03
    • 2020-12-31
    相关资源
    最近更新 更多