package com. 
 atest ; 
 

import java. 
 util . 
 ArrayList ; 
 

import android. 
 app . 
 Activity ; 
 
import android. 
 os . 
 Bundle ; 
 
import android. 
 view . 
 View ; 
 
import android. 
 view . 
 View . 
 OnClickListener ; 
 
import android. 
 widget . 
 ArrayAdapter ; 
 
import android. 
 widget . 
 Button ; 
 
import android. 
 widget . 
 GridView ; 
 
import android. 
 widget . 
 LinearLayout ; 
 
import android. 
 widget . 
 LinearLayout . 
 LayoutParams ; 
 


public 
 class TestGrid 
 extends Activity 
 implements OnClickListener 
 { 
 

       
 protected ArrayList<String> nums = 
 new ArrayList<String> 
 ( 
 3 
 ) ; 
 
       
 protected GridView listHands = 
 null ; 
 
       
 
       
 /** Called when the activity is first created. */ 
 
      @Override 
 
       
 public 
 void onCreate 
 ( Bundle icicle 
 ) 
 { 
 
            
 super . 
 onCreate 
 ( icicle 
 ) ; 
 

            
 for 
 ( 
 int x= 
 0 ; x < 
 3 ; x++ 
 ) 
 { 
 
                nums. 
 add 
 ( 
 "0" 
 ) ; 
 
            
 } 
 
            
 
           setContentView 
 ( R. 
 layout . 
 gridview 
 ) ; 
 
            
 
           LinearLayout numbers = 
 ( LinearLayout 
 ) findViewById 
 ( R. 
 id . 
 grid 
 ) ; 
 

            
 // Set width, height (-1=fill parent), weight 
 
           LayoutParams params = 
 new LinearLayout. 
 LayoutParams 
 ( 
 
                     LinearLayout. 
 LayoutParams . 
 WRAP_CONTENT , 
 30 , 
 1 
 ) ; 
 

            
 this . 
 listHands = 
 new GridView 
 ( 
 this 
 ) ; 
 
            
 
           listHands. 
 setId 
 ( 
 222 
 ) ; 
 

           listHands. 
 setNumColumns 
 ( 
 3 
 ) ; 
 
           listHands. 
 setLayoutParams 
 ( params 
 ) ; 
 
           listHands. 
 setAdapter 
 ( 
 new ArrayAdapter<String> 
 ( 
 this , 
 
                     android. 
 R . 
 layout . 
 simple_list_item_1_small , 
 this . 
 nums 
 ) 
 ) ; 
 
            
 
           numbers. 
 addView 
 ( listHands 
 ) ; 
 
            
 
            
 ( 
 ( 
 Button 
 ) findViewById 
 ( R. 
 id . 
 subBtn 
 ) 
 ) . 
 setOnClickListener 
 ( 
 this 
 ) ; 
 
            
 
       
 } 
 

       
 /** 
       * update the list after every SUBMIT click 
       */ 
 
       
 public 
 void onClick 
 ( 
 View arg0 
 ) 
 { 
 
            
 // update the list 
 
            
 long t = 
 System . 
 currentTimeMillis 
 ( 
 ) ; 
 
            
 
            
 for 
 ( 
 int x= 
 0 ; x < 
 3 ; x++ 
 ) 
 { 
 
                 
 this . 
 nums . 
 set 
 ( x, 
 String . 
 valueOf 
 ( t + x 
 ) 
 ) ; 
 
            
 } 
 
            
 
            
 this . 
 listHands . 
 invalidate 
 ( 
 ) ; 
 
       
 }     
 



}



Here's the XML for the screen

XML:

<?xml version ="1.0" encoding ="utf-8" ?>      
<RelativeLayout id ="@+id/widget24" android:layout_width ="fill_parent" 
      android:layout_height ="fill_parent" android:background ="#ffffffff" 
      xmlns:android ="http://schemas.android.com/apk/res/android" >      

            <LinearLayout id ="@+id/grid" 
           android:layout_width ="wrap_content" android:layout_height ="50px" 
           android:orientation ="vertical" android:scrollbars ="vertical" />      

            <Button id ="@+id/subBtn" android:layout_width ="wrap_content" 
           android:layout_height ="wrap_content" android:text ="SUBMIT" 
           android:textSize ="12sp" android:layout_below ="@+id/grid" >      
            </Button>      

</RelativeLayout>