簡體   English   中英

Android動畫高CPU使用率

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM