0

大家好,我有这个包含 3 个按钮的简单代码

void _showOptions (bill , context){
    Alert(
      context: context,
      type: AlertType.info,
      style: AlertStyle(titleStyle: Theme.of(context).textTheme.bodyText1),
      title: translator.currentLanguage == 'ar' ? 'الخيارات'
          : 'Options',
      buttons: [
        DialogButton(
          onPressed: (){
            Navigator.push(context,
                MaterialPageRoute(builder: (BuildContext context) =>
                    BillView(widget.userInformation , widget.userInformation, bill))
            );
          },
          color: Color(0xffff9900),
          child: Row(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Text(translator.translate("view_bill"), style: TextStyle(color: Colors.white)),
              SizedBox(width: 5,),
              Icon(Icons.featured_play_list , color: Colors.white,)
            ],
          ),
        ),

        DialogButton(
        onPressed: (){
            Navigator.push(context,
                MaterialPageRoute(builder: (BuildContext context) =>
                    PurchasesEdit(widget.userInformation , widget.userInformation, bill))
            );
          },
          color: Colors.blue,
            child: Row(
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                Text(translator.translate("edit"), style: TextStyle(color: Colors.white)),
                SizedBox(width: 5,),
                Icon(Icons.edit , color: Colors.white,)
              ],
            ),
          ),
        DialogButton(
          onPressed: (){
            return _deleteBill(bill['id'] ,  context);
          },
          color: Colors.red,
          child: Row(
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                Text(translator.translate("delete"), style: TextStyle(color: Colors.white)),
                SizedBox(width: 5,),
                Icon(Icons.delete_forever , color: Colors.white,)
              ],
            ),
          ),
      ],
    ).show();
  }

它工作正常,但三个按钮彼此相邻,我希望其中一个在底部,另外两个在顶部

现在的结果

查看 -- 编辑 -- 删除

我想要的是

编辑——删除

- - 看法 - - -

我该怎么做?

提前致谢

4

1 回答 1

0

该库使用Row来呈现按钮,因此无法制作

编辑——删除

- - 看法 - - -

布局。我不使用该库,但您可能需要分叉 github 项目,或者只使用一个DialogButton 并在其中在子属性中创建自定义按钮布局,或者直接将按钮添加到content. 有很多解决方法,但我建议的主要方法是使用showGeneralDialog,当然设置可能需要一些时间,但是您可以在那里更轻松地进行自定义布局

于 2020-09-04T20:53:26.370 回答