[Flutter]リストビュー(ListView)のScrollPhysicsとは?

Flutter

どうも、ちょげ(@chogetarou)です。

ListViewの「physics」に指定する「ScrollPhysics」とは何なのでしょうか?

スポンサーリンク

ScrollPhysicsとは

インターフェース, インターネット, プログラム, ブラウザ, Www

「ScrollPhysics」は、スクロールの仕方を設定するものです。

ScrollPhysicsを使えば、そもそもスクロールさせなかったり、端までスクロールした時にエフェクトをつけたりすることが出来ます。

スポンサーリンク

種類

ScrollPhysicsの種類は、主に3つあります。

NeverScrollableScrollPhysics

1つ目は、「NeverScrollableScrollPhysics」です。

このScrollPhysicsは、スクロールできないようにするものです。

ListView(
  physics: NeverScrollableScrollPhysics(),
  children: [
       ・・・
  ],
),

BouncingScrollPhysics

2つ目は、「BouncingScrollPhysics」です。

このScrollPhysicsは、端までスクロールすると、ゴムのように伸びて、グイッと戻ります。

ListView(
  physics:BouncingScrollPhysics(),
  shrinkWrap: true,
  controller: _scrollController,
  children: [
    for (var i = 0; i < 50; i++)
      Card(
        child: Container(
          height: 50,
          child: Center(child: Text('$i')),
        ),
      )
  ],
)

ClampingScrollPhysics

3つ目は、「ClampingScrollPhysics」です。

これはListViewにデフォルトで設定されているScrollPhysicsで、特別なことはありません。

child: ListView(
  physics: ClampingScrollPhysics(),
  children: [
    ・・・
  ],
),
スポンサーリンク

まとめ

リストビューのScrollPhysicsは、リスビューのスクロールの仕方を設定できるものです。

コメント

タイトルとURLをコピーしました