問題タブ [statefulwidget]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
152596 参照

flutter - データを StatefulWidget に渡し、Flutter でその状態でアクセスする

Flutter アプリには 2 つの画面があります。レコードのリストと、レコードを作成および編集するための画面です。

2 番目の画面にオブジェクトを渡すと、これを編集することを意味し、null を渡すと、新しいアイテムを作成することを意味します。編集画面はステートフル ウィジェットであり、このアプローチを使用する方法がわかりませんhttps://flutter.io/cookbook/navigation/passing-data/私の場合。

_RecordPageState内のrecordObjectにアクセスするにはどうすればよいですか?

0 投票する
6 に答える
133979 参照

flutter - Flutter でステートフル ウィジェットにデータを渡す

ステートフル ウィジェットの作成中に、データをステートフル ウィジェットに渡す推奨される方法を知りたいです。

私が見た2つのスタイルは次のとおりです。

このメソッドはServerInfoとの両方に値を保持しますが_ServerInfoState、これは少し無駄に思えます。

他の方法は、次を使用することwidget._serverです。

状態はもはや_ServerInfoSateウィジェットではなくウィジェットに保存されるため、これは少し逆のようです。

これに対するベストプラクティスはありますか?

0 投票する
1 に答える
4322 参照

dart - Flutter でのビルド中に StatefulWidget の状態を維持する

ユーザーがリスト内のアイテムを追加、削除、および操作できるステートフル ウィジェットのリストがあります。リストからアイテムを削除すると、リスト内の後続のアイテムが、削除された行を埋めるために移動するときに再構築されます。これにより、これらのウィジェットの状態データが失われますが、画面上の位置以外は変更されないはずです。位置が変わっても、リスト内の残りのアイテムの状態を維持できるようにしたい。

以下は、主に StatefulWidgets のリストで構成される私のアプリの簡略版です。ユーザーは、フローティング アクション ボタンを使用してリスト (私のアプリでは「タスク」) に項目を追加したり、スワイプして項目を削除したりできます。リスト内の任意の項目をタップして強調表示すると、項目の背景色の状態が変わります。リストで複数のアイテムが強調表示され、アイテム (リストの最後のアイテム以外) が削除された場合、削除されたアイテムを置き換えるために移動したアイテムは、状態データを失います (つまり、背景色が透明にリセットされます)。これは、タスクが削除された後に setState() を呼び出して表示を更新したため、_taskList が再構築されたためだと思われます。タスクが _taskList から削除された後、残りのタスクの状態データを維持するクリーンな方法があるかどうかを知りたいです。