私は1つのスライドベースのアプリケーションで作業しており、カスタムRelativeLayoutを使用してシェイプを作成しています。 viewHierarchyのレベル)。シェイプはスライドの内容です。 ObjectAnimatorまたはViewPropertyAnimatorを使用して、アニメーションの変換、回転、またはシェイプのプロパティのスケールを設定しようとしています。アニメーションが滑らかではありません。そのちらつき。ここObjectAnimatorを使用したカスタムビュー(ViewHierarchyの葉ノード)をアニメーションで滑らかにしない
サンプルコード切り取り領域
PropertyValuesHolder
pvhTX、pvhTYあります。 PropertyValuesHolder.ofFloat(View.TRANSLATION_X、translateXFrom、translateXTo);
pvhTY = PropertyValuesHolder.ofFloat(View.TRANSLATION_Y、translateYFrom、translateYTo);
anim1 = ObjectAnimator.ofPropertyValuesHolder(shape、pvhTX、pvhTY);
anim1.setDuration((long)(animData.getDetail()。getDuration()* 1000)); //要求に応じてonAnimationEnd、onAnimationEndをオーバーライドするリスナを追加しています。anim1.addListener(新しいAnimationListener(shape、animData、slideEventHandler));
anim1.start();上記のコードで
ShapeがcustomeView(、カスタマーのrelativlayout)であること等
ライン円キューブ三角形など任意の幾何学的形状であってもよい助けてください!
@stephan。 しかし、図形、グラデーション、または単色で塗りつぶすことができます。 しかし、すべての場合において、ちらつきが起こっている。 実線で塗りつぶしています。 これはカスタム表示です。では、描画に必要な最適化は何ですか? 私はカスタムシェイプのonDrawメソッドをチェックしました。 私を助けてください。 ニーズに感謝 –
更新と答えからサンプルを試してみてください) :-)返信用 –
@Stephanおかげで、それは私のrequirement.Iが私のアニメーション の私の要件ごとにキーフレーム、PropertiesValueHolderとObjectAnimatorを使用してアニメーションをやっているスーツはありませんだから、これらすべてのオブジェクトは、アニメーションを開始する前に作成する 私のコードスニペットに概要を持ってください。私はcustomeView(relativelayoutの子)であり、このビューが最も深いレベル(ルートビューから90番目のレベル)にある私の描画された形状にアニメーションを適用しています。 アニメーションは、私が適用され、正しく起こっているが、いくつかの (スムーズでない)ちらつきがあり、この点で おかげで私を助けてください –