Java 淡入淡出在android中工作时间太短,速度太快
我正在尝试在Android中应用淡入淡出转换 你能告诉我为什么我只看到了一瞬间的褪色,然后又恢复到原来的alpha吗 我添加了Java 淡入淡出在android中工作时间太短,速度太快,java,android,xml,eclipse,animation,Java,Android,Xml,Eclipse,Animation,我正在尝试在Android中应用淡入淡出转换 你能告诉我为什么我只看到了一瞬间的褪色,然后又恢复到原来的alpha吗 我添加了setFillAfter(true)以保持图像消失 我试过: animation = android.view.animation.AnimationUtils .loadAnimation(AppService.getAppContext(),
setFillAfter(true)
以保持图像消失
我试过:
animation = android.view.animation.AnimationUtils
.loadAnimation(AppService.getAppContext(),
com.waze.R.anim.fade_out);
animation.setInterpolator(new AccelerateInterpolator());
animation.setFillAfter(true);
boxImage_left.startAnimation(animation);
为此:
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:fillAfter="true">
<alpha android:fromAlpha="0.0"
android:toAlpha="1.0"
android:repeatCount="0"
android:duration="500"/>
</set>
让您的活动实现AnimationListener,并在动画结束后设置可见性
public class YourActivity extends Activity implements AnimationListener
{
@override
onCreate(Bundle x)
{
...
// set animation listener
animFadein.setAnimationListener(this);
animFadeOut.setAnimationListener(this);
}
@Override
public void onAnimationEnd(Animation animation)
{
if (animation == animFadein)
{
view.setVisibility(View.VISIBLE);
}
if (animation == animFadeOut)
{
view.setVisibility(View.INVISIBLE);
}
}
}
对于动画速度,请修改动画持续时间和插值器,而不是加速器插值器,您可以使用线性插值器 我知道为时已晚,但我会帮助别人的
public class YourActivity extends Activity implements AnimationListener
{
@override
onCreate(Bundle x)
{
...
// set animation listener
animFadein.setAnimationListener(this);
animFadeOut.setAnimationListener(this);
}
@Override
public void onAnimationEnd(Animation animation)
{
if (animation == animFadein)
{
view.setVisibility(View.VISIBLE);
}
if (animation == animFadeOut)
{
view.setVisibility(View.INVISIBLE);
}
}
}