
其实这种布局是使用了一种叫“GridView”的表格布局,下面我来给大家讲一下:
首先,请大家理解一下“迭代显示”这个概念,这个好比布局嵌套,我们在一个大布局里面重复的放入一些布局相同的小布局,那些重复的部分是由图片和文字组成的小控件,图片在上方,文字在下方,之后我们只需要把这些小控件迭代进入主容器里即可。
我们来看看实际做出来的效果图:

我们来看看主容器的布局(GridView)
main.xml
<?xmlversion="1.0"encoding="utf-8"?><GridViewxmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/GridView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:numColumns="auto_fit" android:columnWidth="90dp" android:stretchMode="columnWidth" android:gravity="center"></GridView>介绍一下里面的某些属性:
<?xmlversion="1.0"encoding="utf-8"?><RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="wrap_content"><ImageViewandroid:layout_width="wrap_content"android:id="@+id/ItemImage"android:layout_height="wrap_content"android:layout_centerHorizontal="true"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@+id/ItemImage"android:id="@+id/ItemText"android:layout_centerHorizontal="true"/></RelativeLayout>这里使用了一个相对布局,在TextView 里使用属性android:layout_below=”@+id/ItemImage”指示了文本在图片的下方。
packagejiabin.activity; importjava.util.ArrayList;importjava.util.HashMap; importandroid.app.Activity;importandroid.os.Bundle;importandroid.view.View;importandroid.widget.AdapterView;importandroid.widget.AdapterView.OnItemClickListener;importandroid.widget.GridView;importandroid.widget.SimpleAdapter;importandroid.widget.Toast; publicclasslayout_gridviewextendsActivity {/** Called when the activity is first created. */@OverridepublicvoidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);GridView gridview = (GridView) findViewById(R.id.GridView);ArrayList<HashMap<String, Object>> meumList =newArrayList<HashMap<String, Object>>();for(inti =1;i <10;i++){HashMap<String, Object> map =newHashMap<String, Object>();map.put("ItemImage", R.drawable.i1);map.put("ItemText",""+i);meumList.add(map);}SimpleAdapter saItem =newSimpleAdapter(this, meumList,//数据源 R.layout.item,//xml实现 newString[]{"ItemImage","ItemText"},//对应map的Key newint[]{R.id.ItemImage,R.id.ItemText}); //对应R的Id //添加Item到网格中gridview.setAdapter(saItem);//添加点击事件gridview.setOnItemClickListener(newOnItemClickListener(){publicvoidonItemClick(AdapterView<?> arg0, View arg1,intarg2,longarg3){intindex=arg2+1;//id是从0开始的,所以需要+1Toast.makeText(getApplicationContext(),"你按下了选项:"+index,0).show();//Toast用于向用户显示一些帮助/提示}});}}点击事件响应使用Toast,我们可以用此方法显示用户点击的效果和触发动作,上面代码使用了Toast默认效果,
这种布局是不是很拉风呢,希望本文所述对大家学习Android软件编程有所帮助。