在Android中单击按钮后,使布局显示动画

Fal*_*ity 6 android android-animation

我正在尝试为登录屏幕实现一个简单的动画效果.

这是场景,

1:默认情况下会显示一些文本和登录按钮.

2:单击登录按钮后,将从下到上显示新的框架布局.此布局将提示用户输入其用户名和密码.

我可以制作一个从父母到另一个父母重叠的动画.在这种情况下,我正在寻找一个不会离开活动就会出现的动画.

小智 17

首先设置invisible你的布局.
将动画设置为slideUp和slideDown.

   final LinearLayout layout = (LinearLayout)findViewById(R.id.yourlayout);

   button.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View arg0) {
            Animation slideUp = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_up);
            Animation slideDown = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_down);

            if(layout.getVisibility()==View.INVISIBLE){

                layout.startAnimation(slideUp);
                layout.setVisibility(View.VISIBLE);
        }
    });
Run Code Online (Sandbox Code Playgroud)

slide_up.xml(在res/anim目录中创建)

<set xmlns:android="http://schemas.android.com/apk/res/android">  
    <translate android:fromXDelta="0" android:fromYDelta="500" android:duration="500"/>
</set>
Run Code Online (Sandbox Code Playgroud)

slide_down.xml

<set xmlns:android="http://schemas.android.com/apk/res/android">  
    <translate android:fromXDelta="0" android:fromYDelta="0" android:toYDelta="500" android:duration="500"/>
</set>
Run Code Online (Sandbox Code Playgroud)

注意: 您应该编辑值slide_down.xml,slide_up.xml直到获得有利的结果.
例如:android:fromYDelta="500"改为android:fromYDelta="700"