簡単な質問です。Androidハードウェアアクセラレーション:アニメーションにハードウェアレイヤが必要ですか?
私は非常に滑らかなUIを提供するために、いくつかのドキュメンテーションを読んでてきました。私は、デフォルトで、SDK 14+をターゲットとするアプリケーションプロジェクトは、ハードウェアアクセラレーションをオンにすることを知っています。この場合
、私は実際にプロジェクトバターの一部として最適化されているプロパティ(アルファ、スケール、移動と回転)を変更し、特定のアニメーションのためのハードウェアレイヤを使用する必要がありますか?私は、これらの層を知っているが、正しく使用した場合、「プリバッファリング」のアニメーションフレームでレンダリングプロセスを最適化することで、GPUのメモリにそれらを保存します。しかし、いつそれらを使うべきですか?彼らは本当に必要ですか? また、ハードウェアアクセラレーションはそれを実現しますか?ご入力の
ありがとう!
あなた飽和アニメーションを定義することはできますか?私も小さなテストをしましたが、新しいプロジェクトのHelloWorldテキストビューの両方の軸でスケールと平行移動の値をアニメートする簡単な10秒間のanimate()で違いは見られませんでした。私はCM 13を実行しているGalaxy Note 3を試してみました.GPUモニタではフレームごとにいくつかの喪失がはっきり見えるでしょう。それは滑らかではありません。どうして ? – Mackovich
彩度アニメーションは基本的に、 'animatedView.setColorFilter()'を使って 'ImageView'カラーフィルタを変更しています。 –
これは最適化されたプロパティの一部ではないのですか?これらのプロパティは、Lolliopopで導入されたRenderThread内で変更されます。あまりにも多くのタスクのUIスレッドを緩和するのに役立ちます。 – Mackovich