36

我有一个 9 补丁图像文件,如下所示:

替代文字

当我使用它时,它看起来像这样:

替代文字

我真正想要实现的是中心的完整点重复而不是拉伸。我希望这是可能的。

4

3 回答 3

16

我认为不可能使用 9-Patch 制作重复图案(仅拉伸某些区域),也许您可​​以在官方文档中找到更多相关信息

于 2010-09-29T15:46:36.760 回答
15

...

更正:如果你想让橙色的点重复,你使用 9 补丁是不会成功的。9补丁只能拉伸你告诉它拉伸的部分,其余区域保持不变。9个补丁PNG没有重复模式。

您可能想查看 Bitmap 类。这里有一个 tileMode 您可以用来解决您的问题。

<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
            android:src="@drawable/stripe_bg"
            android:tileMode="repeat"
            android:antialias="true"
            android:dither="false"
            android:filter="false"
            android:gravity="left"
        />
于 2011-08-22T17:41:30.597 回答
-4

首先确保将 9 补丁图像保存为 your_image_name.9.png 并将其存储在 res/drawable 文件夹中。然后在您的 xml 中,只需使用 -- android:background="@drawable/your_image_name" 设置布局背景,这应该可以工作。如果它仍然不起作用,您可以发布您的布局 xml 吗?

于 2010-09-03T23:03:17.583 回答