Ninepatch Background缩小了GridView的显示区域

时间:2011-01-06 02:54:14

标签: android gridview nine-patch

我有一个基本的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"
    />

一切正常,直到我添加九个补丁背景。一旦我添加这样的背景图像:

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

它破坏了我的gridview。而不是显示3-4列(取决于屏幕分辨率和方向),网格视图中的所有图标都显示在左上角的单个列中。此外,一次只显示两个,我必须向下滚动才能看到其余部分。我怀疑gridview受到ninpatch中心标识尺寸的限制,但我不确定。

我的九点在中间有一个小区域,有一个我想要显示的标志,没有任何偏斜。背景的其余部分是一个小的渐变,占据了屏幕的其余部分。关于导致这种情况的任何想法?

1 个答案:

答案 0 :(得分:1)

听起来你已经定义了填充(九个补丁的底部和右边的线条)?尝试摆脱这些,所以你只定义了内容区域(顶部和左侧的线条)