Skip to main content

Android animate drop down/up view proper



Okay I'm trying to do a proper slide down animation. The view that slides down should push all views bellow it down in one smooth movement and again when it slides up all the views should follow in one smooth movement.





What I've tryed : In code:







LinearLayout lin = (LinearLayout)findViewById(R.id.user_list_container);

setLayoutAnimSlidedownfromtop(lin, this);

lin.addView(getLayoutInflater().inflate(R.layout.user_panel,null),0);







And:







public static void setLayoutAnimSlidedownfromtop(ViewGroup panel, Context ctx) {



AnimationSet set = new AnimationSet(true);



Animation animation = new AlphaAnimation(0.0f, 1.0f);

animation.setDuration(100);

set.addAnimation(animation);



animation = new TranslateAnimation(

Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f,

Animation.RELATIVE_TO_SELF, -1.0f, Animation.RELATIVE_TO_SELF, 0.0f

);

animation.setDuration(500);

set.addAnimation(animation);



LayoutAnimationController controller =

new LayoutAnimationController(set, 0.25f);

panel.setLayoutAnimation(controller);



}







My user_panel.xml:







<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="match_parent"

android:layout_height="40dp"

android:orientation="vertical" >

<ImageView

android:layout_alignParentLeft="true"

android:layout_height="wrap_content"

android:layout_width="wrap_content"

android:src="@drawable/icon" />

</LinearLayout>







Top of main xml:







<LinearLayout

android:id="@+id/user_list_container"

android:layout_alignParentTop="true"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="wrap_content"/>

<LinearLayout

android:id="@+id/container"

android:layout_below="@+id/user_list_container"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="wrap_content">







The problem with above approach is that when I start the animation first the empty space for the view is created and then the view slides down. I'd like it to slowly push all the other views down instead of doing it in one hard motion.


Comments

Popular posts from this blog

Slow Android emulator

I have a 2.67 GHz Celeron processor, 1.21 GB of RAM on a x86 Windows XP Professional machine. My understanding is that the Android emulator should start fairly quickly on such a machine, but for me it does not. I have followed all instructions in setting up the IDE, SDKs, JDKs and such and have had some success in staring the emulator quickly but is very particulary. How can I, if possible, fix this problem?