ListView & GridView
ListView、ListView.builder、GridView、ScrollController、アイテムの再利用、lazy loading
25 面接問題·
Mid-Level
1FlutterにおけるListView()とListView.builder()の主な違いは何ですか?
1
FlutterにおけるListView()とListView.builder()の主な違いは何ですか?
回答
ListView()はすべての子要素を即座に生成するため、長いリストではパフォーマンスの問題を引き起こす可能性があります。ListView.builder()はlazy loadingを使用し、画面に表示されるタイミングでのみウィジェットを生成します。要素数が多いリストでは、画面外のウィジェットを再利用することでメモリとパフォーマンスを最適化するため、ListView.builder()が推奨されます。
2表示する要素の数を指定するために必須となるListView.builder()のパラメータはどれですか?
2
表示する要素の数を指定するために必須となるListView.builder()のパラメータはどれですか?
回答
itemCountパラメータは、リストにいくつの要素が含まれているかをListView.builder()に伝えます。このパラメータがないと、リストは無限とみなされ、itemBuilderが無限に呼び出されてしまいます。itemCountを設定することで、フレームワークは要素の構築をいつ停止すべきかを把握し、スクロールインジケーターを正しく表示できます。
3ListViewの各要素の間にセパレーターを追加するにはどうすればよいですか?
3
ListViewの各要素の間にセパレーターを追加するにはどうすればよいですか?
回答
ListView.separated()は、要素間にセパレーターを表示するために特別に設計されています。itemBuilderに加えてseparatorBuilderを受け取り、各要素の間にカスタムウィジェット(Dividerなど)を定義できます。このアプローチは、itemBuilder内で手動でセパレーターを追加するよりもクリーンです。
4
Flutterで水平方向のListViewを作成するにはどうすればよいですか?
5
ListViewにおけるshrinkWrapパラメータの役割は何ですか?
+22 面接問題
その他のFlutter面接トピック
Dartの基礎
Junior
25問Dart言語の基礎
Junior
15問Flutter の基礎
Junior
18問ウィジェットのライフサイクル
Junior
20問ローカルストレージ
Junior
20問アプリケーションのライフサイクル
Junior
20問Layouts & Constraints
Mid-Level
24問ナビゲーションとルーティング
Mid-Level
22問基本的な状態管理
Mid-Level
22問Provider パターン
Mid-Level
18問Networking & HTTP
Mid-Level
20問JSONシリアライゼーション
Mid-Level
20問ローカルデータベース
Mid-Level
22問フォームとバリデーション
Mid-Level
20問アニメーション
Mid-Level
20問Firebase 統合
Mid-Level
18問ユニットテスト
Mid-Level
20問ウィジェットテスト
Mid-Level
18問ビルドとデプロイ
Mid-Level
16問パッケージ管理
Mid-Level
16問メモリとパフォーマンス
Senior
22問Streams & RxDart
Senior
24問高度なState Management
Senior
26問Flutter Design Patterns
Senior
24問パフォーマンス最適化
Senior
26問Platform Channels
Senior
20問Custom Painting
Senior
22問Flutterアプリケーションアーキテクチャ
Senior
22問