效果圖如下:
1、佈局文件add.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android">
<GridView
android:id="@+id/gridView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:numColumns="3"
android:horizontalSpacing="10dip"
android:verticalSpacing="20dip"
android:layout_marginTop="40dip"
android:gravity="center"
/>
</LinearLayout>
2、java代碼添加格子視圖內容,此處略去了頂部actionbar內容的代碼
public class AddActivity extends Activity {
GridView gridView;
String add[];
List<Map<String,Object>> items;
Map<String,Object> item;
private int addicons[]={R.drawable.main_menu_action_chatting,R.drawable.main_menu_action_free_call,R.drawable.main_menu_action_free_sms,
R.drawable.main_menu_action_voice_msg,R.drawable.main_menu_action_international_roaming,R.drawable
.main_menu_action_scan};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.add);
gridView =(GridView)findViewById(R.id.gridView);
add = getResources().getStringArray(R.array.add);
items = new ArrayList<Map<String,Object>>();
for (int i=0 ; i<6; i++){
item = new HashMap<String,Object>();
item.put("addIcon", addicons[i]);
item.put("addName",add[i]);
items.add(item);
}
SimpleAdapter adapter = new SimpleAdapter(this, items, R.layout.add_detail,
new String[]{"addIcon","addName"}, new int[]{R.id.addIcon,R.id.addName});
gridView.setAdapter(adapter);
}
}
3、add_detail.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_centerInParent="true">
<ImageView
android:id="@+id/addIcon"
android:layout_width="65dip"
android:layout_height="65dip"
/>
<TextView
android:id="@+id/addName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
/>
</LinearLayout>
</RelativeLayout>