Center Column in Flutter

时光怂恿深爱的人放手 提交于 2019-12-11 15:08:32

问题


I have a column inside a ListTile like this:

return ListTile(
    //contentPadding: EdgeInsets.symmetric(horizontal: 20.0, vertical: 20.0),
    leading: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        crossAxisAlignment: CrossAxisAlignment.center,
        children: <Widget>[
          Container(
            padding: EdgeInsets.only(right: 12.0),
            decoration: BoxDecoration(
                border: Border(
                    right: BorderSide(
              width: 1.0,
            ))),
            child: Column(
              children: <Widget>[
                Text('Hello'),
              ],
            ),
              )
            ]),

...more code
}

Shouldn't this center the container vertically? I am doing something similar with a column and space around in the title section and it works fine.


回答1:


Can you try wrapping your column inside a container and giving it a fixed width like below:

leading: Container(
  width: 100,
  child: Column(
      mainAxisAlignment: MainAxisAlignment.center,
      crossAxisAlignment: CrossAxisAlignment.end,
      children: <Widget>[]),
);



回答2:


You can add it in a Center widget

ListTile(
//contentPadding: EdgeInsets.symmetric(horizontal: 20.0, vertical: 20.0),
    leading: Center(
    child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        crossAxisAlignment: CrossAxisAlignment.center,
        children: <Widget>[
          Container(
            padding: EdgeInsets.only(right: 12.0),
            decoration: BoxDecoration(
                border: Border(
                    right: BorderSide(
                      width: 1.0,
                    ))),
            child: Column(
              children: <Widget>[
                Text('Hello'),
              ],
            ),
          )
        ]),
    ),
    )


来源:https://stackoverflow.com/questions/57289550/center-column-in-flutter

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!