Make a layout appear with animation after button click in Android

浪子不回头ぞ 提交于 2020-01-12 05:45:06

问题


I'm trying to implement a simple animation effect for login screen.

Here's the scenario,

1: Some text and a login button will be displayed by default.

2: After clicking the login button a new frame layout will appear from bottom to top. This layout will prompt user to enter their username and password.

I can make an animation which will overlay from one parent to another. In this scenario, I'm looking for an animation that will appear without leaving the activity.


回答1:


First set invisible to your layout.
Set animation to slideUp and 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);
        }
    });

slide_up.xml (create in res/anim directory)

<set xmlns:android="http://schemas.android.com/apk/res/android">  
    <translate android:fromXDelta="0" android:fromYDelta="500" android:duration="500"/>
</set>

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>

Note: You should edit values in slide_down.xml and slide_up.xml until get favorable result.
for example:change android:fromYDelta="500" to android:fromYDelta="700"




回答2:


Check out this tutorial, it explains some basic animations which you can customize for your need.

http://www.androidhive.info/2013/06/android-working-with-xml-animations/



来源:https://stackoverflow.com/questions/21261583/make-a-layout-appear-with-animation-after-button-click-in-android

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!