1
私はカラムを持っていますが、サイズが違う多くのテキストエントリが含まれていて、最大のテキストと同じ幅に拡張したいと思います。兄弟の最大幅に基づいてウィジェットを表示
My TextのエントリはColorでコンテナにラップされており、すべてのコンテナをコンテナに揃えて直線的な境界線でレンダリングできるようにしたい。
どのように私はこれをフラッターで指示できますか?
私はカラムを持っていますが、サイズが違う多くのテキストエントリが含まれていて、最大のテキストと同じ幅に拡張したいと思います。兄弟の最大幅に基づいてウィジェットを表示
My TextのエントリはColorでコンテナにラップされており、すべてのコンテナをコンテナに揃えて直線的な境界線でレンダリングできるようにしたい。
どのように私はこれをフラッターで指示できますか?
これは、IntrinsicWidth
の良い使用例です。あなたは子供たちの固有の幅を決定するためにCrossAxisAlignment.stretch
でそれを使用して、あなたのColumn
の幅を設定するためにそれを使用することができます:
は、ここで上記の画像を生成し、サンプルコードです。
import 'package:flutter/material.dart';
void main() {
runApp(new MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Flutter Demo',
home: new Material(
child: new Center(
child: new IntrinsicWidth(
child: new Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
new Container(
decoration: new BoxDecoration(color: Colors.blue[200]),
child: new Text('Hello'),
),
new Container(
decoration: new BoxDecoration(color: Colors.green[200]),
child: new Text('world!!!!!!!'),
),
],
),
),
),
),
);
}
}
あなたの列には固定値がありますか?そうであれば、Expanded [https://docs.flutter.io/flutter/widgets/Expanded-class.html]にすべての子供をラップして、利用可能なスペースを取ることができます。 –
これらはテキストベースではありません。 –