关于android GridView的用法


一、布局文件
1、布局文件GridView 
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:weightSum="1">
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
<GridView android:id="@+id/gridView1" 
android:layout_height="wrap_content" android:background="#000000" android:numColumns="4" android:layout_width="wrap_content">
</GridView>
</LinearLayout>
 

2、grid_item.xml布局文件

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="match_parent" 
    android:layout_height="match_parent"> 
    <ImageView android:layout_height="wrap_content" android:id="@+id/item_imageView" 
        android:layout_width="wrap_content" android:src="@drawable/icon" android:layout_gravity="center"></ImageView> 
    <TextView android:text="TextView" android:id="@+id/item_textView" 
        android:layout_width="wrap_content"
        android:textColor="#ffffff"
         android:layout_height="wrap_content" android:layout_gravity="center"></TextView> 
 
</LinearLayout> 


二、代码
1、使用ArrayAdapter适配器绑定

private String[] item = { "唐僧", "孙悟空 ", "猪八戒", "沙和尚" };
private ArrayAdapter adapter;
private GridView gridView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
gridView = (GridView) findViewById(R.id.gridView1);	
// 设定一个Array适配器,将数组数据放入适配器中
adapter = new ArrayAdapter(this,
android.R.layout.simple_dropdown_item_1line, item);
// 对GridView进行适配
gridView.setAdapter(adapter);
}

2、使用SimpleAdapter适配器绑定

private String[] item = { "唐僧", "孙悟空 ", "猪八戒", "沙和尚" };
private SimpleAdapter adapterSimple;
private GridView gridView;
@Override
public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.main);

	 gridView = (GridView) findViewById(R.id.gridView1);

	//创建一个ArrayList列表,内部存的是HashMap列表 
	ArrayList<HashMap<String, Object>> listItems = new ArrayList<HashMap<String, Object>>(); 
	 //将数组信息分别存入ArrayList中 
	int len = item.length; 
        for(int i=0; i < len ; i++){ 
            HashMap<String, Object> map = new HashMap<String, Object>(); 
            map.put("image", R.drawable.icon); 
            map.put("item", item[i]); 
            listItems.add(map);  
        } 
	//HashMap中的Key信息,要与grid_item.xml中的信息作对应 
        String[] from = {"image", "item"}; 
        //grid_item.xml中对应的ImageView控件和TextView控件 
        int[] to = {R.id.item_imageView, R.id.item_textView}; 
        // 设定一个适配器 
        adapterSimple = new SimpleAdapter(this, listItems, R.layout.grid_item, from, to); 
 
        // 对GridView进行适配 
        gridView.setAdapter(adapterSimple); 
	}

   

 

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值