我目前正在開發一個android應用程序,它需要顯示一個書架,其中每行最多包含3個圖像。我爲此使用了gridview。但我卡在一個點,我無法改變gridview中整行的背景。誰能告訴我如何做到這一點?在android中更改gridview的單行背景
用於gridview的
private class SampleGridAdapter extends BaseAdapter{
private Context context;
private int[] images = {"R.drawable.img1","R.drawable.img2","R.drawable.img3","R.drawable.img4","R.drawable.img5","R.drawable.img6","R.drawable.img7"};
public SampleGridAdapter(Context context) {
super();
this.context = context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return images.length;
}
@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int arg0, View arg1, ViewGroup arg2) {
// TODO Auto-generated method stub
View v = null;
ImageView coverImageView;
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = inflater.inflate(R.layout.bookgrid, null);
coverImageView = (ImageView) v.findViewById(R.id.coverImageView);
coverImageView.setImageResource(images[position]);
coverImageView.setScaleType(ImageView.ScaleType.FIT_XY);
return v;
}
}
bookgrid.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/shelfimage" >
<ImageView
android:id="@+id/coverImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:paddingBottom="0dp"
android:paddingLeft="25dp"
android:paddingTop="6dp"
android:src="@drawable/ic_launcher" />
</RelativeLayout>
適配器我在GridView的聲明設置列數爲3。在這裏,我將xml文件的背景設置爲android:background =「@ drawable/shelfimage」。但它是爲每個項目分別設置背景......我想爲每一行設置單個圖像作爲背景(有3個項目)....
什麼是你的意思是單列! GridView提供點擊一個項目 – Sameer 2013-03-04 08:38:59
你確定你不想在每一行上使用「3」項的列表視圖嗎? – 2013-03-04 08:50:03
提供了一些代碼 – Shiv 2013-03-04 09:01:22