我有一个LinearLayout
,我想显示或隐藏与Animation
,推动布局向上或向下,每当我改变它的可见性.
我看过一些样品,但没有一个适合我的需要.
我已经为动画创建了两个XML文件,但是当我更改LinearLayout
的可见性时,我不知道如何启动它们.
我有一个LinearLayout
,我想显示或隐藏与Animation
,推动布局向上或向下,每当我改变它的可见性.
我看过一些样品,但没有一个适合我的需要.
我已经为动画创建了两个XML文件,但是当我更改LinearLayout
的可见性时,我不知道如何启动它们.
使用Android 3.0(Honeycomb)中引入的新动画API,创建此类动画非常简单.
将View
向下滑动一段距离:
view.animate().translationY(distance);
您可以稍后将View
滑回其原始位置,如下所示:
view.animate().translationY(0);
您还可以轻松组合多个动画.下面的动画将把View
向下滑动其高度,并同时将其淡入:
// Prepare the View for the animation
view.setVisibility(View.VISIBLE);
view.setAlpha(0.0f);
// Start the animation
view.animate()
.translationY(view.getHeight())
.alpha(1.0f)
.setListener(null);
然后你可以淡出View
并将其滑回原来的位置.我们还设置了AnimatorListener
,以便在动画完成后将View
的可见性设置回GONE
:
view.animate()
.translationY(0)
.alpha(0.0f)
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
super.onAnimationEnd(animation);
view.setVisibility(View.GONE);
}
});