波动图,在中间放置文本

问题描述 投票:0回答:1

我正在使用Flutter Charts创建一个甜甜圈图。我想在甜甜圈中放置文字以及图例。

我尝试在Center Widget内使用Stack Widget,但如果将DatumLegend作为行为添加到图表中,则不会将文本居中。如果删除图例,它将在正确的位置显示文本。

我在图表中的代码是:

Stack(
  children: <Widget>[
    charts.PieChart(
      getseriesList(_values),
      animate: true,
      defaultRenderer: charts.ArcRendererConfig(
          arcWidth: 40,
          arcRendererDecorators: [
            charts.ArcLabelDecorator(
                labelPosition: charts.ArcLabelPosition.outside)
          ]),
      defaultInteractions: true,
      behaviors: [
        charts.DatumLegend(
          position: charts.BehaviorPosition.bottom,
          desiredMaxColumns: 4,
          legendDefaultMeasure: charts.LegendDefaultMeasure.none,
        ),
      ],
    ),
    Center(
      child: Container(
        margin: EdgeInsets.only(top: 4),
        child: Text(
          'CenterText',
          style: TextStyle(
            color: Colors.black38,
            fontWeight: FontWeight.w700,
          ),
        ),
      ),
    ),
  ],
)

[这里,我想将99放在中间。.

flutter charts flutter-layout
1个回答
0
投票

使用定位的小部件,而不是在堆栈中居中。要保持小部件的中心水平:

Positioned(
    left : 0,
    right : 0,
    child : <your widget>,
)

要保持小部件中心垂直:

Positioned(
    top : 0,
    bottom : 0,
    child : <your widget>,
)

这对我有用:)

© www.soinside.com 2019 - 2024. All rights reserved.