1

我已经使用 android draw9patch 实用程序创建了几个 9-patch 图像,但我还没有制作一个可以工作的图像。在一张图像上,我在上边缘有 2 个点,在左边缘有 2 个点;“显示坏补丁”按钮显示没有坏补丁,右侧的样本看起来很好。但是,在应用程序中,图像的顶部和右侧显示黑色 9patch 点。

我们是否应该设置 backgroundColor 或 cachecolor 来隐藏图像视图中的点?

我的目标是谷歌地图 2.3.3。此 API 是否存在已知问题?

4

2 回答 2

1

当它们显示在手机上时,这些点就会消失。它们告诉 Android 系统可以拉伸图像的哪些部分而不会扭曲它的外观。如果您注意到 9patch 的格式是.9.png,那么在显示图像并删除点之前,Android 会进行预处理。我发现“显示坏补丁”很少会产生影响,即使它们被认为是“坏的”,它们也会按照我想要的方式工作。至少在我的经验中。只需将 9 个补丁添加到您的活动中并像往常一样引用它们


更新


等一等。您是否尝试使用 9patches 作为要在 中显示的图像ImageView?这不是 9patches 的用途。9patches 是按钮或其他 UI 元素的可拉伸图像(即,用于不同的屏幕尺寸),因此开发人员可以使用一张图像来拉伸和适应不同尺寸的按钮,而不是每种尺寸都使用一张。Android 以ImageView. 如果您使用 显示 9patches ImageView,Android 不会将黑点预处理为可重复的图像切片,它只是显示整个内容。

于 2012-07-23T22:50:07.907 回答
1

你给文件的全名是什么?文件名必须以“.9.png”结尾才能正常工作。否则,它将被视为普通 png 文件,该文件将在图像边缘显示点和线。

于 2012-07-23T22:53:55.317 回答