Android:幻灯片动画

时间:2014-06-28 20:46:50

标签: android android-linearlayout android-animation

我有一个LinearLayout,它位于RelativeLayout中并与其底部对齐。它的高度是wrap_content。我尝试做的是当用户按下按钮并完成按钮所做的动作时,我希望此LinearLayout滑出屏幕底部。因此,当动画完成后,LinearLayout将不再位于视图中。

当动画发生时,我实际看到的是LinearLayout闪烁一秒钟然后没有任何反应。

这是我的布局XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:facebook="http://schemas.android.com/apk/res-auto"
android:id="@+id/splash_layout_id"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/splash_screen_barcastr"
android:gravity="center_horizontal"
android:orientation="vertical" >


 <LinearLayout 
     android:id="@+id/splash_loginBox"
     android:layout_alignParentBottom="true"
     android:orientation="vertical"
     android:background="@drawable/message_editor_background_shadow"
     android:layout_width="match_parent"
     android:layout_height="wrap_content">

这是我的动画:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
    android:duration="200"
    android:fromYDelta="0%"
    android:toYDelta="100%" />
<alpha
    android:duration="200"
    android:fromAlpha="1.0"
    android:toAlpha="0.0" />

我称之为:

Animation slideOutAnimation = AnimationUtils.loadAnimation(getActivity(), R.drawable.splash_login_slide_out);
            slideOutAnimation.setAnimationListener(new Animation.AnimationListener() {

                @Override
                public void onAnimationStart(Animation animation) {

                }

                @Override
                public void onAnimationRepeat(Animation animation) {

                }

                @Override
                public void onAnimationEnd(Animation animation) {

                }
            });
            //Now Set your animation
            loginContainer.startAnimation(slideOutAnimation);

1 个答案:

答案 0 :(得分:0)

这是答案:

@Override
   public void onAnimationEnd(Animation animation) {
          loginContainer.setVisibility(View.GONE);
   }
动画结束后

使布局不可见