dev 옵션을 사용하지 않는 활동이 켜져있을 때 잘 작동하는 앱이 있습니다.onCreate가 다시 호출 될 때 Android 애니메이션이 시작되지 않습니다.
언제
응용 프로그램이 백그라운드로 이동하고 다시 모든 시간의에서 onCreate 함수가 다시 호출하지만 OFF입니다. 거기에 마지막 앱 상태가 다시 생성됩니다.
이제는 사용자 작업에서 발생하는 간단한 애니메이션이 시작되지 않고 애니메이션 처리기가 호출되지 않는 것이 문제입니다.
애니메이션이 무시 된 것처럼 보입니다. 그리고 이것은 활동이 살해되고 다시 생성 될 때만 발생합니다.
그리고 가장 이상한 부분은 하나의 이미지 뷰 (개폐식)에 2 개와 다른 이미지 뷰 (개폐식)에 2 개씩 4 개의 애니메이션이 있다는 것입니다.
그리고 이것은 오프닝 애니메이션에서 일어납니다.
나를 도와 줄 수 있습니까?
애니메이션 XMLS (개구 중 하나로/폐쇄 anims)
redShow 애니메이션
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator">
<alpha
android:fromAlpha="0.1"
android:toAlpha="1.0"
android:duration="800"
/>
<scale android:fromXScale="0.0"
android:toXScale="1.0"
android:fromYScale="0.0"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="800">
</scale>
</set>
redHide 애니메이션
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator">
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="300"
/>
<scale android:fromXScale="1.0"
android:toXScale="0.0"
android:fromYScale="1.0"
android:toYScale="0.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="300">
</scale>
</set>
(에서 onCreate에서) 코드 I 초기화 중하고 물건
red = (ImageView) findViewById(R.id.red);
redHide = AnimationUtils.loadAnimation(this, R.anim.red_hide);
redHide.setFillAfter(true);
redHide.setAnimationListener(this);
redShow = AnimationUtils.loadAnimation(this, R.anim.red_show);
redShow.setFillAfter(true);
redShow.setAnimationListener(this);
핸들러 및 방법 나는 당신이 시도 할 수
private void showRed() {
red.startAnimation(redShow); //this is the one that is not happening
}
private void hideRed() {
red.startAnimation(redHide);
}
@Override
public void onAnimationEnd(Animation a) {
}
@Override
public void onAnimationRepeat(Animation a) {
}
@Override
public void onAnimationStart(Animation a) {
}
G
코드를 게시해야합니다. – Rawkode
코드없이 도움을 얻을 수 없습니다. 그리고 팁은 onCreate에서 가능한 한 적게하십시오. onResume() 또는 onStart()가이 점을 처리하는 데 더 좋은 장소입니다. – Simon
startAnimation()이 호출되는 것이 확실합니까 (예 : 중단 점)? – Simon