Android gridview中的滚动问题(特别是在三星手机中)

Android gridview中的滚动问题(特别是在三星手机中),android,android-gridview,Android,Android Gridview,您好,我在Gridview中遇到了一个问题。而且大多数是三星手机。有时候图标在滚动时是看不见的,或者在屏幕上方留下很多空间。这一切都是在滚动菜单时发生的。请检查屏幕截图。 gridviewadapter.java public class GridviewAdapter extends ArrayAdapter<HomepageGeSe> { Context context; int layoutResourceId; ArrayList<Homepag

您好,我在Gridview中遇到了一个问题。而且大多数是三星手机。有时候图标在滚动时是看不见的,或者在屏幕上方留下很多空间。这一切都是在滚动菜单时发生的。请检查屏幕截图。 gridviewadapter.java

public class GridviewAdapter extends ArrayAdapter<HomepageGeSe>
{
    Context context;
    int layoutResourceId;
    ArrayList<HomepageGeSe> data = null;
    RecordHolder holder = null;

    public GridviewAdapter(Context context, int layoutResourceId, ArrayList<HomepageGeSe> data) {
        super(context, layoutResourceId, data);
        this.layoutResourceId = layoutResourceId;
        this.context = context;
        this.data = data;
    }
    static class RecordHolder {
        TextView txtTitle;
        ImageView imageItem;
    }
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

        if (convertView == null) {
            LayoutInflater mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = mInflater.inflate(layoutResourceId, parent, false);
            holder = new RecordHolder();

            holder.txtTitle = (TextView) convertView.findViewById(R.id.item_text);
            holder.imageItem = (ImageView) convertView.findViewById(R.id.item_image);
            convertView.setTag(holder);
        } else {
            holder = (RecordHolder) convertView.getTag();
        }


        HomepageGeSe list = data.get(position);
        holder.txtTitle.setText(list.getName());

        if(list.getDrawableId() != 0)
        {
            holder.txtTitle.setText(list.getName());
            Picasso.with(context)
                    .load(list.getDrawableId())
                    .fit ()
                    .error(R.drawable.imagenotavailable)
                    .into(holder.imageItem);
        }

        return convertView;
    }
}

Homepage.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:fitsSystemWindows="true"
            android:id = "@+id/rootLayout"
            android:orientation="vertical">
            <ListView
                android:id="@+id/list"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:dividerHeight="1dp"/>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:fitsSystemWindows="true"
                android:orientation="vertical">
            <GridView
                android:id="@+id/gridView1"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_margin="10dp"
                android:columnWidth="90dp"
                android:gravity="center"
                android:numColumns="auto_fit"
                android:horizontalSpacing="10dp"
                android:verticalSpacing="15dp"
                android:stretchMode="columnWidth" />
        </LinearLayout>
        </RelativeLayout>

    gridview_row.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:padding="5dp">
            <ImageView
                android:id="@+id/item_image"
                android:layout_width="52dp"
                android:layout_height="52dp"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true"
                android:contentDescription="@string/imageDes">
            </ImageView>
            <TextView
                android:id="@+id/item_text"
                android:layout_below="@+id/item_image"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="2dp"
                android:gravity="center"
                android:textAppearance="?android:attr/textAppearance"
                android:textColor="@color/textview_all">
            </TextView>
            </RelativeLayout>
公共类GridviewAdapter扩展了ArrayAdapter
{
语境;
国际布局资源;
ArrayList数据=null;
记录持有者=null;
公共GridviewAdapter(上下文上下文、int-layoutResourceId、ArrayList数据){
超级(上下文、布局资源ID、数据);
this.layoutResourceId=layoutResourceId;
this.context=上下文;
这个数据=数据;
}
静态类记录保持器{
TextView-txtTitle;
图像查看图像项;
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
if(convertView==null){
LayoutInflater mInflater=(LayoutInflater)context.getSystemService(context.LAYOUT\u INFLATER\u SERVICE);
convertView=mInflater.inflate(布局资源ID,父项,false);
holder=新记录持有者();
holder.txtTitle=(TextView)convertView.findViewById(R.id.item_text);
holder.imageItem=(ImageView)convertView.findViewById(R.id.item_image);
convertView.setTag(支架);
}否则{
holder=(RecordHolder)convertView.getTag();
}
homepagese list=data.get(位置);
holder.txtTitle.setText(list.getName());
if(list.getDrawableId()!=0)
{
holder.txtTitle.setText(list.getName());
毕加索。与(上下文)
.load(list.getDrawableId())
.fit()
.错误(R.drawable.imagenotavailable)
.进入(持有人.项目);
}
返回视图;
}
}
Homepage.xml
gridview_row.xml