如何使galleryview项填充父宽度

时间:2014-05-15 23:53:52

标签: android gridview gallery

我正在尝试使用Gallery View(知道它已弃用)作为水平GridView。没关系,但现在我想让它只显示一个项目,这意味着每个项目都填充了父项的宽度。

这是我的XML(目前简约,只是一个LinearLayout):

<LinearLayout
        android:id="@+id/profile"
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/galleryLabel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/gallerylabeltext"
            android:layout_marginBottom="10dp"
            android:textSize="@dimen/small_text_size" />

        <Gallery
            android:id="@+id/mygallery"
            android:layout_width="fill_parent"
            android:layout_height="80dp"
            android:gravity="center" />

        <View
            android:layout_width="fill_parent"
            android:layout_height="1dp"
            android:background="@android:color/darker_gray" />

</LinearLayout>

我怎样才能实现这一目标?扩展Gallery类?在XML?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

试试这个适配器,以及

public class ImageAdapter extends BaseAdapter {

        private Context mContext;

        public ImageAdapter(Context c) {
            mContext = c;
            aQuery = new AQuery(c); 
        }

        public int getCount() {
            return myImageList.length;
        }

        public Object getItem(int position) {
            return position;
        }

        public long getItemId(int position) {
            return position;
        }

        @SuppressWarnings("deprecation")
        public View getView(final int pos, View arg1, ViewGroup arg2) {
            ImageView i = new ImageView(mContext);
            i.setLayoutParams(new Gallery.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
            i.setScaleType(ScaleType.FIT_XY);
            i.setImageResource(myImageList[pos]);
            return i;
        }
    }

答案 1 :(得分:0)

您可以尝试使用“RelativeLayout”替换XML中的“LinearLayout”,我曾经使用过Gallery只显示一个项目