ネストされた重みはなぜパフォーマンスに悪影響を与えるのでしょうか? 代替手段はありますか? 質問する

ネストされた重みはなぜパフォーマンスに悪影響を与えるのでしょうか? 代替手段はありますか? 質問する

layout_weight属性を使用して異なるビュー間の比率を作成したレイアウト ファイルをいくつか作成しました。

ある時点で、ネストされた重みに関する lint 警告が表示され始めます。

それで、ネストされたウェイトがパフォーマンスに悪いのはなぜか、そして、さまざまな画面サイズに使用でき、複数のレイアウト ファイル (つまり、さまざまな画面サイズ用) を通じて多くのディメンション dpi 値を指定する必要がない、ビュー ディメンション間の一定の比率を作成するより効率的な方法があるかどうか疑問に思います。

ありがとう!

ベストアンサー1

ネストされた重みは、次の理由によりパフォーマンスに悪影響を及ぼします。

レイアウトの重み付けでは、ウィジェットを 2 回測定する必要があります。重みがゼロでない LinearLayout が、重みがゼロでない別の LinearLayout 内にネストされている場合、測定回数は指数関数的に増加します。

使った方が良い相対レイアウト特定の dpi 値を使用せずに、他のビューの場所に応じてビューを調整します。

おすすめ記事