Another Animation sample program in Android

By: Ashley Printer Friendly Format    

This sample android program shows you how to do simple animation in Android. In this program a list of items in a listview is animated to appear by expanding to full size from the center of the screen. You can play with the code to try different types of animation.

The FrameAnimation1.java file is as follows:

package com.javasamples;

import android.app.Activity;
import android.os.Bundle;
import android.widget.*;

public class LayoutAnimation2 extends Activity
{
   @Override
   public void onCreate(Bundle savedInstanceState)
   {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
      setupListView();
   }

   private void setupListView()
   {
      String[] listItems = new String[] 
      {
         "Item 1", "Item 2", "Item 3",
         "Item 4", "Item 5", "Item 6",
      };

      ArrayAdapter listItemAdapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,listItems);

      ListView lv = (ListView)this.findViewById(R.id.list_view_id);
      lv.setAdapter(listItemAdapter);
   }
}

The output of this program will be as shown in the android emulator below.

The main.xml file in your res/layout folder is as follows:

<?xml version="1.0" encoding="utf-8"?>
<!-- filename: /res/layout/list_layout.xml -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
    android:layoutAnimation="@anim/controller"

   >
   <ListView
      android:id="@+id/list_view_id"
      android:persistentDrawingCache="animation|scrolling"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
       
   />
</LinearLayout>

In addition to the main.xml, you need to create another xml file ani.xml with the following code in your res/anim folder. You have to create this folder yourself.

<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<scale
android:fromXScale="0"
android:toXScale="1"
android:fromYScale="0.1"
android:toYScale="1.0"
android:duration="5000"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="1000" />
</set>

In addition to the ani.xml, you need to create another xml file ani1.xml with the following code in your res/anim folder. 

<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">

<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"
android:duration="5000" />

</set>

In addition to the ani.xml and ani1, you need to create another xml file controller.xml with the following code in your res/anim folder. You have to create this folder yourself.

<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:delay="30%" 
android:animation="@anim/ani" />

                                        

Ask a Question



Most Viewed Articles (in Android )

Latest Articles (in Android)

Comment on this tutorial