問題タブ [observedobject]
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.
swiftui - ObservedObject が変数の変更を受け取らない
関数が呼び出されると変更される Published 変数があります。クラス内で変数を印刷すると、変数が設定されていることがわかりますが、ビューが変更されず、変数を印刷すると、変数を最初に設定したものだけが印刷されます。
これについていくつかの同様の投稿があったことは知っていますが、それらを調べた後でも、何が間違っているのかまだわかりません。
コードは次のとおりです:(ここでは関係ないと思われるマイナスビット)
変数を変更するために呼び出される関数を含むクラス
表示して更新
関数を呼び出すビュー:
swiftui-list - @ObservedObject の更新時に SwiftUI リストがフリーズする
最後に、より多くのデータを自動的に取得するリストがあります。
次のようなモデル:
私の問題: @Published/@ObservedObject を変更するたびに、リストをスクロールすると少しフリーズします。また、List は、表示されているすべてのビュー + 上下のいくつかのビューの本体を再計算することがわかりました。
しかし、何がスクロールのハングにつながるのかを判断して修正することはできません (おそらく、フリーズは (スクロール速度 * レンダリング時間) に等しい距離への転送ですか?
SwiftUI が既存のビューでボディを再計算するのはなぜですか? 彼らは変わっていません!
手伝って頂けますか?