我有一个基本的 GridView,我设置如下:
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/MainMenuGridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
/>
一切正常,直到我添加了一个 Ninepatch 背景。一旦我像这样添加背景图像:
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/MainMenuGridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
android:background="@drawable/mainbackground"
/>
它打破了我的网格视图。不是显示 3-4 列(取决于屏幕分辨率和方向),gridview 中的所有图标都显示在左上角的单列中。此外,一次只显示两个,我必须向下滚动才能看到其余部分。我怀疑 gridview 受 ninpatch 中心徽标的尺寸限制,但我不确定。
我的 Ninepatch 中间有一个小区域,上面有一个我想要显示的徽标,不会出现任何倾斜。背景的其余部分是一个小的渐变,占据了屏幕的其余部分。关于造成这种情况的任何想法?