Make a layout appear with animation after button click in Android

后端 未结 2 659
眼角桃花
眼角桃花 2021-02-09 13:35

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

相关标签:
2条回答
  • 2021-02-09 14:18

    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/

    0 讨论(0)
  • 2021-02-09 14:20

    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"

    0 讨论(0)
提交回复
热议问题