GridView:

activity_main.xml

<RelativeLayoutxmlns: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:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.example.gridview.MainActivity"><GridViewandroid:id="@+id/gridView1_1"android:layout_width="match_parent"android:layout_height="wrap_content"android:numColumns="auto_fit"android:columnWidth="90dp"android:verticalSpacing="2dp"android:horizontalSpacing="2dp"android:stretchMode="columnWidth"android:gravity="center"></GridView></RelativeLayout>

MainActivity

packagecom.example.gridview;importandroid.app.Activity;importandroid.content.Context;importandroid.os.Bundle;importandroid.view.Menu;importandroid.view.MenuItem;importandroid.view.View;importandroid.view.ViewGroup;importandroid.widget.BaseAdapter;importandroid.widget.GridView;importandroid.widget.ImageView;publicclassMainActivityextendsActivity{privateGridViewgridView;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);gridView=(GridView)findViewById(R.id.gridView1_1);MyImageAdaptermyImageAdapter=newMyImageAdapter(this);gridView.setAdapter(myImageAdapter);}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.getMenuInflater().inflate(R.menu.main,menu);returntrue;}@OverridepublicbooleanonOptionsItemSelected(MenuItemitem){//Handleactionbaritemclickshere.Theactionbarwill//automaticallyhandleclicksontheHome/Upbutton,solong//asyouspecifyaparentactivityinAndroidManifest.xml.intid=item.getItemId();if(id==R.id.action_settings){returntrue;}returnsuper.onOptionsItemSelected(item);}staticclassMyImageAdapterextendsBaseAdapter{privateContextct;//要显示的图片资源privateint[]p_w_picpaths={R.drawable.th_seismometer_1,R.drawable.th_skippylite,R.drawable.th_sms_hey_blue,R.drawable.th_ssh,R.drawable.th_things1,R.drawable.th_thisday,R.drawable.th_seismometer_1,R.drawable.th_skippylite,R.drawable.th_sms_hey_blue,R.drawable.th_ssh,R.drawable.th_things1,R.drawable.th_thisday};MyImageAdapter(Contextct){this.ct=ct;}@OverridepublicintgetCount(){//TODOAuto-generatedmethodstubreturnp_w_picpaths.length;}@OverridepublicObjectgetItem(intposition){//TODOAuto-generatedmethodstubreturnposition;}@OverridepubliclonggetItemId(intposition){//TODOAuto-generatedmethodstubreturnposition;}@OverridepublicViewgetView(intposition,ViewconvertView,ViewGroupparent){//TODOAuto-generatedmethodstubImageViewp_w_picpathView;if(convertView==null){p_w_picpathView=newImageView(ct);//设置图片的宽和高p_w_picpathView.setLayoutParams(newGridView.LayoutParams(85,85));//设置拉伸或截取方式p_w_picpathView.setScaleType(ImageView.ScaleType.CENTER_CROP);p_w_picpathView.setPadding(8,8,8,8);}else{p_w_picpathView=(ImageView)convertView;}p_w_picpathView.setImageResource(p_w_picpaths[position]);returnp_w_picpathView;}}}



Gallery:

activity_main.xml

<RelativeLayoutxmlns: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:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="com.example.gallery.MainActivity"><Galleryandroid:id="@+id/gallery1_1"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="60dp"android:layout_marginTop="60dp"></Gallery></RelativeLayout>

MainActivity

packagecom.example.gallery;importandroid.app.Activity;importandroid.os.Bundle;importandroid.view.Menu;importandroid.view.MenuItem;importandroid.view.View;importandroid.view.ViewGroup;importandroid.widget.BaseAdapter;importandroid.widget.Gallery;importandroid.widget.ImageView;publicclassMainActivityextendsActivity{privateGallerygallery;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);gallery=(Gallery)findViewById(R.id.gallery1_1);MyGalleryAdaptermyGalleryAdapter=newMyGalleryAdapter();gallery.setAdapter(myGalleryAdapter);}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.getMenuInflater().inflate(R.menu.main,menu);returntrue;}@OverridepublicbooleanonOptionsItemSelected(MenuItemitem){//Handleactionbaritemclickshere.Theactionbarwill//automaticallyhandleclicksontheHome/Upbutton,solong//asyouspecifyaparentactivityinAndroidManifest.xml.intid=item.getItemId();if(id==R.id.action_settings){returntrue;}returnsuper.onOptionsItemSelected(item);}classMyGalleryAdapterextendsBaseAdapter{privateint[]p_w_picpaths={R.drawable.th_seismometer_1,R.drawable.th_skippylite,R.drawable.th_sms_hey_blue,R.drawable.th_ssh,R.drawable.th_things1,R.drawable.th_thisday,R.drawable.th_seismometer_1,R.drawable.th_skippylite,R.drawable.th_sms_hey_blue,R.drawable.th_ssh,R.drawable.th_things1,R.drawable.th_thisday};@OverridepublicintgetCount(){//TODOAuto-generatedmethodstubreturnp_w_picpaths.length;}@OverridepublicObjectgetItem(intposition){//TODOAuto-generatedmethodstubreturnposition;}@OverridepubliclonggetItemId(intposition){//TODOAuto-generatedmethodstubreturnposition;}@OverridepublicViewgetView(intposition,ViewconvertView,ViewGroupparent){//TODOAuto-generatedmethodstubImageViewp_w_picpathView;if(convertView==null){p_w_picpathView=newImageView(MainActivity.this);}else{p_w_picpathView=(ImageView)convertView;}p_w_picpathView.setImageResource(p_w_picpaths[position]);returnp_w_picpathView;}}}