[英]Android Animation High CPU Usage
我正在嘗試創建一個簡單的android動畫。 反彈的Google地圖標記。 我已經實現了一個簡單的代碼來執行此操作,但是當我在API 28上運行它時,這幾乎可以了。 當我在所有其他API版本上,在多個仿真器上甚至在我的手機上運行代碼時,CPU使用率看起來都非常高,在所有運行時間內從35%上升到80-90%。 我所有的主要活動看起來都比較慢。
我正在使用約束布局,我不知道這是否有幫助
那就是我的bounce.xml:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/bounce_interpolator">
<translate
android:duration="800"
android:toYDelta="-50"
android:repeatCount="infinite"
android:repeatMode= "reverse"
/>
</set>
那是我簡單的主要活動:
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.animation.AnimationUtils;
public class Home extends AppCompatActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
findViewById(R.id.img_pointer1_id).startAnimation(AnimationUtils.loadAnimation(getApplicationContext(), R.anim.bounce));
}
}
關於如何解決此/任何替代解決方案的任何建議?
這是動畫的ObjectAnimator版本。 你可以試試這個嗎? 希望能幫助到你。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//findViewById(R.id.img_pointer1_id).startAnimation(AnimationUtils.loadAnimation(getApplicationContext(), R.anim.bounce));
ObjectAnimator animator = ObjectAnimator.ofFloat(findViewById(R.id.img_pointer1_id), "translationY", 0, -50, 0);
animator.setInterpolator(new BounceInterpolator());
animator.setDuration(800);
animator.setRepeatCount(ValueAnimator.INFINITE);
animator.setRepeatMode(ValueAnimator.REVERSE);
animator.start();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.