Gridview表格控制項,

來源:互聯網
上載者:User

Gridview表格控制項,
Gridview表格控制項

 

 

分析:

使用和ListvVew很像,都是經過適配器將資料繫結到控制項上

具體步驟如下:

1、建立GridView控制項,並指定列數

  android:numColumns="3"

2、建立顯示資料項目的資料容器,是一個Lauout檔案,裡面一個ImageView,一個TextView

  上面是ImageView,“小白10”是TextView顯示的

3、建立好資料,這裡用List來實現

  private List<HashMap<String, Object>> mData;

  mData=new ArrayList<HashMap<String,Object>>();

  然後是建立HashMap

    HashMap<String, Object> map=new HashMap<String, Object>();

       map.put("txt", "小白"+i);   

    map.put("image", images[i]);

    mData.add(map);

4、建立資料配接器,並且將資料繫結到資料配接器

  private SimpleAdapter adapter;

  adapter=new SimpleAdapter(this, mData, R.layout.itemview1,new String[]{"txt","image"}, new int[]{R.id.textView1,R.id.iv_avator});

5、為GridView設定資料配接器

  gridview.setAdapter(adapter);

 

 

代碼:

fry.Activity01

 1 package fry; 2  3 import java.util.ArrayList; 4 import java.util.HashMap; 5 import java.util.List; 6 import java.util.Map; 7  8 import com.example.gridView.R; 9 10 import android.app.Activity;11 import android.os.Bundle;12 import android.widget.GridView;13 import android.widget.SimpleAdapter;14 15 public class Activity01 extends Activity{16     private List<HashMap<String, Object>> mData;17     private GridView gridview;18     private SimpleAdapter adapter;19     private int[] images=new int[]{20             R.drawable.image1,R.drawable.image2,R.drawable.image3,21             R.drawable.image5,R.drawable.image6,R.drawable.image7,22             R.drawable.image8,R.drawable.image9,R.drawable.image10,23             R.drawable.image11,R.drawable.image12,R.drawable.image13,24             R.drawable.image14,R.drawable.image425     };26     27     @Override28     protected void onCreate(Bundle savedInstanceState) {29         // TODO Auto-generated method stub30         super.onCreate(savedInstanceState);31         setContentView(R.layout.activity01);32         gridview=(GridView) findViewById(R.id.gridView1);33         34         mData=new ArrayList<HashMap<String,Object>>();35         for(int i=0;i<images.length;i++){36             HashMap<String, Object> map=new HashMap<String, Object>();37             map.put("txt", "小白"+i);38             map.put("image", images[i]);39             mData.add(map);40         }41         42         adapter=new SimpleAdapter(this, mData, R.layout.itemview1, 43                 new String[]{"txt","image"}, new int[]{R.id.textView1,R.id.iv_avator});44         45         gridview.setAdapter(adapter);46     }47 }
主介面

/gridView/res/layout/activity01.xml

 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3     android:layout_width="match_parent" 4     android:layout_height="match_parent" 5     android:orientation="vertical" > 6  7     <GridView  8         android:id="@+id/gridView1" 9         android:layout_width="match_parent"10         android:layout_height="match_parent"11         android:numColumns="3"12         ></GridView>13 14 </LinearLayout>
建立GridView控制項

/gridView/res/layout/itemview1.xml

 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3     android:layout_width="match_parent" 4     android:layout_height="match_parent" 5     android:gravity="center_horizontal" 6     android:orientation="vertical" > 7  8     <ImageView 9         android:id="@+id/iv_avator"10         android:layout_width="wrap_content"11         android:layout_height="wrap_content"12         android:src="@drawable/image1" />13     14     <TextView 15         android:id="@+id/textView1"16         android:layout_width="wrap_content"17         android:layout_height="wrap_content"18         android:text="小白"19         />20 21 </LinearLayout>
建立資料項目容器

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.