如何在飞镖和颤动中创建凸起按钮功能?

时间:2020-01-01 22:27:12

标签: function flutter dart

我是一个新兴的新手,正在努力创建一个凸起的按钮功能,该功能需要两个输入(按下的路线和文本)并创建一个凸起的按钮。这是我们当前具有的凸起按钮,我们的应用程序将包含数十个这样的按钮,因此我们希望利用它们创建一个函数以减少代码。我在任何地方都找不到。如果可能的话,那我们应该怎么做。 谢谢!!!

RaisedButton(
  shape: RoundedRectangleBorder(
    borderRadius: new BorderRadius.circular(20.0),
  ),
  padding: EdgeInsets.symmetric(
    vertical: 20,
    horizontal: 40,
  ),
  elevation: 20,
  onPressed: () {
    Navigator.push(
      context,
      MaterialPageRoute(builder: (context) => FirstFloorNorth()),
    );
  },
  child: Text(
    'First Floor',
    style: TextStyle(
      color: Colors.blue[800],
      fontSize: 30,
    ),
  ),
),

1 个答案:

答案 0 :(得分:0)

您需要创建一个自定义的凸起按钮小部件,如下所示:

import 'package:flutter/material.dart';

import 'first_floor_north.dart';

class CustomRaisedButton extends StatelessWidget {
  final floorText;

  CustomRaisedButton({this.floorText});

  @override
  Widget build(BuildContext context) {
    return RaisedButton(
      shape: RoundedRectangleBorder(
        borderRadius: new BorderRadius.circular(20.0),
      ),
      padding: EdgeInsets.symmetric(
        vertical: 20,
        horizontal: 40,
      ),
      elevation: 20,
      onPressed: () {
        Navigator.push(
          context,
          MaterialPageRoute(builder: (context) => FirstFloorNorth()),
        );
      },
      child: Text(
        floorText,
        style: TextStyle(
          color: Colors.blue[800],
          fontSize: 30,
        ),
      ),
    );
  }
}

然后,要在其中放置CustomRaisedButton,请执行以下操作:

CustomRaisedButton(
  floorText: 'The name of the floor that you want.',
);

对于您的具体示例,我的意思是:

CustomRaisedButton(
  floorText: 'First Floor',
);