package com.briup.gradelayout;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.Toast;
public class MainActivity extends Activity {
private GridView gv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
gv = (GridView) findViewById(R.id.gv);
List<String> list = new ArrayList<String>();
list.add("我");
list.add("好");
list.add("想");
list.add("你");
list.add("童");
list.add("话");
list.add("一");
list.add("起");
list.add("来");
list.add("看");
list.add("流");
list.add("星");
list.add("雨");
MyAdapter adapter = new MyAdapter(this, list);
gv.setAdapter(adapter);
gv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Log.i("aa","aaaa");
Toast.makeText(MainActivity.this, position + "",
Toast.LENGTH_LONG).show();
}
});
}
}
package com.briup.gradelayout;
import java.util.List;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
public class MyAdapter extends BaseAdapter {
private List<String> list;
private Context mContext;
public MyAdapter(Context mContext, List<String> list) {
this.list = list;
this.mContext = mContext;
}
// 代表数据的总个数
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
// 当前条目
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return list.get(position);
}
// 当前条目position
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = View.inflate(mContext, R.layout.item_layout, null);
holder = new ViewHolder();
holder.btn_word=(Button) convertView.findViewById(R.id.btn_word);
convertView.setTag(holder);
}else{
holder=(ViewHolder)convertView.getTag();
}
holder.btn_word.setText(list.get(position));
return convertView;
}
// 创建内部类
class ViewHolder {
Button btn_word;
}
}
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.briup.gradelayout.MainActivity" >
<!-- android:verticalSpacing="2dp"行于行之间的间距
android:horizontalSpacing="2dp"列与列之间的间距
android:numColumns="3"列数
-->
<GridView
android:id="@+id/gv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:verticalSpacing="2dp"
android:horizontalSpacing="2dp"
android:numColumns="8"
>
</GridView>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<Button xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/btn_word"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#fff"
android:checked="false"
android:focusable="false"
android:focusableInTouchMode="false"
android:clickable="false"
android:text="我"
android:textColor="#000"
android:textSize="20sp"
android:textStyle="bold"
>
<!--
禁用默认button的点击事件
android:checked="false"
android:focusable="false"
android:focusableInTouchMode="false"
-->
</Button>