View difference between Paste ID: 8ByBQ0TA and c9tqG8TX
SHOW: | | - or go back to the newest paste.
1
note most of my code isn't original, but patchwork code done on the basis found here: http://developer.android.com/guide/topics/ui/layout/gridview.html and found here: http://coding4ataraxia.blogspot.com/2011/06/how-to-display-chessboard-on-android.html
2
3
4
package com.bansal.hellogridview;
5
6
import android.os.Bundle;
7
8
import android.app.Activity;
9
import android.view.Menu;
10
import android.view.View;
11
import android.widget.AdapterView;
12
import android.widget.AdapterView.OnItemClickListener;
13
import android.widget.GridView;
14
import android.widget.Toast;
15
16
public class HelloGridView extends Activity {
17
18
    @Override
19
    protected void onCreate(Bundle savedInstanceState) {
20
    	super.onCreate(savedInstanceState);
21
        setContentView(R.layout.main);
22
23
        GridView gridview = (GridView) findViewById(R.id.gridview);
24
        gridview.setAdapter(new ImageAdapter(this));
25
26
        gridview.setOnItemClickListener(new OnItemClickListener() {
27
        	@Override
28
            public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
29
                Toast.makeText(HelloGridView.this, "" + position, Toast.LENGTH_SHORT).show();
30
            }
31
32
        });
33
    }
34
35
    
36
    
37
    
38
}
39
40
---------------------------------------------------------------------------------------------------------
41
package com.bansal.hellogridview;
42
43
import android.content.Context;
44
import android.app.Activity;
45
import android.view.LayoutInflater;
46
import android.view.View;
47
import android.view.ViewGroup;
48
import android.widget.BaseAdapter;
49
import android.widget.GridView;
50
import android.widget.ImageView;
51
52
public class ImageAdapter extends BaseAdapter {
53
    private Context mContext;
54
55
    public ImageAdapter(Context c) {
56
        mContext = c;
57
    }
58
59
    public int getCount() {
60
        return mThumbIds.length;
61
    }
62
63
    public Object getItem(int position) {
64
        return null;
65
    }
66
67
    public long getItemId(int position) {
68
        return 0;
69
    }
70
71
    // create a new ImageView for each item referenced by the Adapter
72
    public View getView(int position, View convertView, ViewGroup parent) {
73
    	    
74
    	    LayoutInflater layoutInflater = ((Activity)mContext).getLayoutInflater ();  // we get a reference to the activity    	    
75
    	    squareContainerView = 
76
    	      layoutInflater.inflate(R.layout.square, null);
77
78
    	    // Background
79
    	    final ImageView squareView = 
80
    	        (ImageView)squareContainerView.findViewById(R.id.square_background);
81
    	    squareView.setImageResource(this.mThumbIds[(position + position/8)%2]);
82
83
    	    if (position % 2 == 0) { //mock test
84
    	        // Add The piece
85
    	        final ImageView pieceView = 
86
    	          (ImageView)squareContainerView.findViewById(R.id.piece);
87
    	        pieceView.setImageResource(R.drawable.ic_launcher);
88
    	        pieceView.setTag(position);
89
    	    }
90
    	  }
91
    	else {
92
    		squareContainerView =  convertView;
93
      }
94
    	  return squareContainerView;
95
    	
96
    }
97
98
    // references to our images
99
    private Integer[] mThumbIds = {
100
//            R.drawable.sample_2, R.drawable.sample_3,
101
//            R.drawable.sample_4, R.drawable.sample_5,
102
//            R.drawable.sample_6, R.drawable.sample_7,
103
//            R.drawable.sample_0, R.drawable.sample_1,
104
//            R.drawable.sample_2, R.drawable.sample_3,
105
//            R.drawable.sample_4, R.drawable.sample_5,
106
//            R.drawable.sample_6, R.drawable.sample_7,
107
//            R.drawable.sample_0, R.drawable.sample_1,
108
//            R.drawable.sample_2, R.drawable.sample_3,
109
//            R.drawable.sample_4, R.drawable.sample_5,
110
//            R.drawable.sample_6, R.drawable.sample_7
111
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
112
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
113
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
114
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
115
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
116
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
117
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
118
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
119
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
120
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
121
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
122
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
123
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
124
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
125
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
126
    		  R.id.square_background, R.id.square_background, R.id.square_background, R.id.square_background,
127
    		  
128
    		  
129
    };
130
}
131
132
-----------------------------------------------------------------
133
(square.xml)
134
<?xml version="1.0" encoding="utf-8"?>
135
<FrameLayout
136
 xmlns:android="http://schemas.android.com/apk/res/android"
137
    android:id="@+id/square"
138
    android:layout_width="wrap_content"
139
    android:layout_height="wrap_content"
140
    android:orientation="vertical"
141
    android:gravity="center_horizontal"
142
    android:background="#00000000">
143
  
144
 <ImageView android:id="@+id/square_background"
145
    android:layout_width="40dp"
146
    android:layout_height="35dp"
147
    android:background="#ffff0000"
148
 />
149
 
150
 <ImageView android:id="@+id/piece"
151
    android:layout_width="wrap_content"
152
    android:layout_height="wrap_content"
153
 />
154
</FrameLayout>
155
---------------------------------------------------------------------
156
(main.xml)
157
<?xml version="1.0" encoding="utf-8"?>
158
<GridView xmlns:android="http://schemas.android.com/apk/res/android" 
159
    android:id="@+id/gridview"
160
    android:layout_width="fill_parent" 
161
    android:layout_height="fill_parent"
162
    android:numColumns="8"
163
    android:padding="1dp"
164
    android:verticalSpacing="2dp"
165
    android:horizontalSpacing="2dp"
166
    android:columnWidth="60dp"
167
    android:stretchMode="columnWidth"
168
    android:gravity="center_horizontal"
169
/>
170
----------------------------------------------------------------------