样式为gridview定制适配器

时间:2014-07-30 20:19:57

标签: android android-layout

我想要的是什么 ::
<的 I am trying to display same look on both landscape and portrait mode >

enter image description here


我现在拥有什么 :: < 观察imageview在不同方向模式下的外观不同 >在纵向模式下,imageview的高度更多

enter image description here enter image description here


grid_single.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:background="#222222"
    android:orientation="vertical"
    android:padding="10dp" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#FFFFFF"
            android:orientation="vertical" >

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="#E6E6E6"
                android:orientation="vertical" >

                <ImageView
                    android:id="@+id/grid_image"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:padding="10dp"
                    android:src="@drawable/eleven" >
                </ImageView>
            </LinearLayout>

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="#FFFFFF"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/grid_text"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:padding="10dp"
                    android:text="Text"
                    android:textSize="12sp" >
                </TextView>
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>

</LinearLayout>

activity_main.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"
    tools:context=".MainActivity" >

    <GridView
        android:id="@+id/grid"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:divider="@null"
        android:listSelector="#00000000"
        android:numColumns="auto_fit" />

</LinearLayout>

2 个答案:

答案 0 :(得分:2)

尝试将ImageView xml更改为:

<ImageView
    android:id="@+id/grid_image"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="10dp"
    android:scaleType="fitXY"
    android:src="@drawable/eleven" >
</ImageView>

您可以看到不同android:scaleType显示的良好示例,以及它们的行为here

答案 1 :(得分:0)

请改用此XML ..

<强> grid_single.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="wrap_content"
    android:background="#222222"
    android:orientation="vertical"
    android:padding="10dp" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#FFFFFF"
            android:orientation="vertical" >

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="#E6E6E6"
                android:orientation="vertical" >

                <ImageView
                    android:id="@+id/grid_image"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:padding="10dp"
                    android:src="@drawable/eleven" >
                </ImageView>
            </LinearLayout>

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="#FFFFFF"
                android:orientation="vertical" >

                <TextView
                    android:id="@+id/grid_text"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:padding="10dp"
                    android:text="Text"
                    android:textSize="12sp" >
                </TextView>
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>

</LinearLayout>