Android学习第十二天----GridView
xml中
<RelativeLayout xmlns: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" tools:context=".MainActivity" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="@string/hello_world" /> <GridView android:id="@+id/gridView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:numColumns="3" android:verticalSpacing="20dp" android:horizontalSpacing="20dp"> </GridView> </RelativeLayout>
第二个xml中,用于存放素材的位置
<LinearLayout xmlns: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:orientation="vertical" tools:context=".MainActivity" > <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textview1" android:layout_gravity="center"/> </LinearLayout>
java代码:
package cn.will.test; import android.os.Bundle; import android.app.Activity; import android.view.LayoutInflater; import android.view.Menu; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.BaseAdapter; import android.widget.GridView; import android.widget.ImageView; import android.widget.TextView; public class MainActivity extends Activity { private String [] photo_name={"aaaaaaa","bbbbbbb","ccccc","dddddd","eeeee","fffff"}; private int [] photo={R.drawable.a,R.drawable.b,R.drawable.c,R.drawable.d,R.drawable.e,R.drawable.f}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); GridView mGridView=(GridView)findViewById(R.id.gridView1); mGridView.setAdapter(new MyAdapter()); mGridView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { System.out.println("aaaaaaaaaaaaaaaaaaaa"); } }); } private class MyAdapter extends BaseAdapter { @Override public int getCount() { return 5; } @Override public Object getItem(int arg0) { return null; } @Override public long getItemId(int arg0) { // TODO Auto-generated method stub return 0; } @Override public View getView(int position, View arg1, ViewGroup arg2) { LayoutInflater inflater = LayoutInflater.from(MainActivity.this); View view=(View)inflater.inflate(R.layout.activity_main_gv, null); ImageView imageView=(ImageView)view.findViewById(R.id.imageView1); TextView textView=(TextView)view.findViewById(R.id.textview1); imageView.setImageResource(photo[position]); textView.setText(photo_name[position]); return view; } } }