Android:使用主页或后退关闭活动时,动画不会停止

时间:2014-06-20 08:48:54

标签: android animation

我想我已经找到了大部分帖子,虽然我觉得我做的一切都很好,当你有一个带有动画的活动时,我发现正在查看当活动在活动中时动画仍在运行的cpu使用情况cpu使用率在0.64%和1.5%之间的背景。当我禁用动画时,我发现cpu变为0,所以证明这是罪魁祸首。

感谢您提供的任何帮助,因为目前我的头靠在墙上,我确信这是非常荒谬的,我做错了。

动画应始终在活动可见时运行,因此onCreate我会执行以下操作:

  ImageView mobilePhone = (ImageView)findViewById(R.id.imageHandHeldMobile);
  tapPhoneOnTag = (AnimatorSet) AnimatorInflater.loadAnimator(this,    R.anim.mobile_nfc_scan);
  tapPhoneOnTag.setTarget(mobilePhone);
  tapPhoneOnTag.start();

在onPause中我有以下代码:

 public void onPause() {
    super.onPause();
    tapPhoneOnTag.end();

 }

在onStop中我有以下代码:

public void onStop() {
    super.onStop();
    finish();
}

在onResume中我有以下代码:

public void onResume() {
    super.onResume();
    tapPhoneOnTag.start();
}

动画XML如下所示:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:ordering="sequentially" >
<objectAnimator
android:duration="3500"
android:propertyName="x"
android:repeatCount="infinite"
android:repeatMode="reverse"
android:valueFrom="200"
android:valueTo="380"
android:valueType="floatType" />
</set>

此活动使用以下代码从主活动启动:

private void tagviewer() {
   Intent intent = new Intent(this, TagViewer.class);
    startActivity(intent);
}

定义活动的清单文件如下所示:

   <activity
        android:name="com.xxx.xxx.xxx"
        android:label="@string/tag_viewer"

        android:parentActivityName="com.xxx.xxx.xxx"
        android:screenOrientation = "portrait">>
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="Home" />
    </activity>

0 个答案:

没有答案