我有一个通用的FadeOut动画,用于很多其他事情。我拿出一个按钮并将其切换到一个新按钮,使onClick保持不变。唯一的区别是位置和src:图像。我的意思是不工作就是它只是看去了而且没有消失。它按照预期与其他按钮一起工作但不是这个按钮
MainActivity
public void onPreferenceClose(View view){
FadeOut = AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_out);
FadeIn = AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_in);
if(preferences.getVisibility() == View.VISIBLE){
preferences.startAnimation(FadeOut);
preferences.setVisibility(View.GONE);
preferences.clearAnimation();
w_Toolbar.startAnimation(FadeIn);
w_Toolbar.setVisibility(View.VISIBLE);
p_Web.setClickable(false);
}
}
XML
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:fillBefore="true"
android:fillAfter="true"
android:duration="350">
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"
/>
答案 0 :(得分:1)
您的Fadeout
动画正在运行,但是当您将可见性(偏好设置)设置为gone
时,它不显示动画。因为它首先使 Gone ..不要使用setVisibility来消除它不是fadeout anim所必需的..它会自动为你做这个...或者你可以使用动画的监听器,并在动画结束时使视图消失
`
<alpha
android:duration="1000"
android:fromAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:toAlpha="0.0" />
`
将此代码用于动画..
忘了在集合中使用android:fillAfter="true" >
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true" >
答案 1 :(得分:0)
删除此行。
preferences.clearAnimation();
你的动画开始并被清除,这就是你无法看到它的原因