我看到了一个应用,其{{1}}中的图标行为延迟了它的可见性(Fade In-animation),但我的手机API却是19。
我的问题是,如何访问这些图标以延迟其可见性?是否可以在不使用第三方库的情况下实施它?
答案 0 :(得分:1)
对于您在Java中的视图,您可以执行以下操作 -
Animation fadeIn = new AlphaAnimation(0, 1);
fadeIn.setInterpolator(new DecelerateInterpolator()); //add this
fadeIn.setDuration(1000);
Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator()); //and this
fadeOut.setStartOffset(1000);
fadeOut.setDuration(1000);
AnimationSet animation = new AnimationSet(false); //change to false
animation.addAnimation(fadeIn);
animation.addAnimation(fadeOut);
View.startAnimation(animation);
如果您想要只使用一个。 你甚至可以通过调用它来阻止它
View.clearAnimation();
或其他方式
对于XML,在res/anim
文件夹中创建一个文件,假设名称为fadein.xml
<?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="2000"
/>
</set>
在java中
动画animationFadeIn = AnimationU
tils.loadAnimation(this, R.anim.fadein);
View.startAnimation(animationFadeOut);
在导航变为可见的方法中使用startAnimation()