facebook twitter hatena line email

「Flutter/UI/横縦並び・比率」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(1つのウィジェットと残りの比率)
(1つのウィジェットと残りの比率)
行72: 行72:
 
参考:https://qiita.com/kalupas226/items/5aa41ca409730606000f
 
参考:https://qiita.com/kalupas226/items/5aa41ca409730606000f
  
===1つのウィジェットと残りの比率===
+
===1つの部品と残りの部品の比率===
 
<pre>
 
<pre>
 
Row(
 
Row(

2019年11月21日 (木) 00:35時点における版

横並び

Row(children: <Widget>[
    Expanded(child: Container(
    padding: EdgeInsets.all(20.0),
    child: Text("1"),
    color: Colors.grey,
    ),),
    Expanded(child: Container(
    padding: EdgeInsets.all(20.0),
    child: Text("2"),
    color: Colors.red,
    ),),
    Expanded(child: Container(
    padding: EdgeInsets.all(20.0),
    child: Text("3"),
    color: Colors.green,
    ),),
    Expanded(child: Container(
    padding: EdgeInsets.all(20.0),
    child: Text("4"),
    color: Colors.blue,
    ),),
],),

上の20は高さ。

参考:https://nzigen.com/flutter-reference/2018-04-18-row-expanded.html

縦並び

Column(
  crossAxisAlignment: CrossAxisAlignment.center,
  children: <Widget>[
    Text('taro'),
    Text('jiro'),
    Text('saburo')
  ],
),

参考:https://dev.classmethod.jp/smartphone/flutter_column_row_1/

比率

横並びの比率をflexで入れる。

Row(
  children: [
    Expanded(
      flex: 2,
      child: Container(
        color: Colors.blue,
        child: Text('taro'),
      ),
    ),
    Expanded(
      flex: 3,
      child: Container(
        color: Colors.green,
        child: Text('jiro'),
      ),
    ),
    Expanded(
      flex: 1,
      child: Container(
        color: Colors.orange,
        child: Text('saburo'),
      ),
    ),
  ],
),

参考:https://qiita.com/kalupas226/items/5aa41ca409730606000f

1つの部品と残りの部品の比率

Row(
  children: [
    Flexible(
      flex: 1,
      child: Container(
        color: Colors.blue,
        child: Text('taro'),
      ),
    ),
    Flexible(
      flex: 10,
      child: Container(
        color: Colors.green,
        child: Text('jiro'),
      ),
    ),
  ],
),