GridView项看起来不像预期的那样 - Android

时间:2017-05-17 19:04:48

标签: android gridview

我尝试在我的应用中的特定片段中使用popup对象。 我为网格项创建了一个布局文件,在布局编辑器中,预览图像看起来很好,正如预期的那样。

当我在我的模拟器中运行应用程序时出现问题。整个项目布局缩小,我放在中间的图像突然跳到布局的顶部。

布局编辑器的屏幕截图: https://i.gyazo.com/8ed96ed19719a578388cc48aba6829f8.png

模拟器的屏幕截图: https://i.gyazo.com/cca0a32b3d102025df5d5369dc7c0efc.png

以下是片段的xml代码:

popup.setOnMenuItemClickListener(new OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {
                Log.d("songo", "item selected");
                return false;
            }
        });

这是项目布局xml代码:

GridView

以下是适配器代码:

<?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">

    <GridView
        android:id="@+id/documents_grid"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginTop="10dp"
        android:columnWidth="@dimen/document_grid_item_width"
        android:gravity="center"
        android:horizontalSpacing="0dp"
        android:verticalSpacing="0dp"
        android:numColumns="auto_fit"
        android:stretchMode="spacingWidthUniform" />

    <RelativeLayout
        android:id="@+id/empty_view_layout"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <ImageView
            android:id="@+id/empty_view_image"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="50dp"
            android:src="@drawable/recent_empty_view" />

        <ImageView
            android:id="@+id/empty_view_arrow"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignEnd="@+id/empty_view_image"
            android:layout_below="@+id/empty_view_image"
            android:layout_marginEnd="7dp"
            android:scaleX="0.75"
            android:scaleY="0.75"
            android:src="@drawable/empty_view_arrow" />
    </RelativeLayout>

</RelativeLayout>

1 个答案:

答案 0 :(得分:0)

这对我有用,你可以试试......

`<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:padding="5dp" >
<GridView
    android:id="@+id/gridview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:columnWidth="100dp"
    android:gravity="center"
    android:horizontalSpacing="10dp"
    android:numColumns="3"
    android:stretchMode="spacingWidthUniform"
    android:verticalSpacing="10dp" />

`

如果这不起作用,您也可以尝试使用android:stretchMode="columnWidth"