Android 9-patch应用程序不';你不能正常工作吗?

Android 9-patch应用程序不';你不能正常工作吗?,android,nine-patch,Android,Nine Patch,我正在尝试创建一个仅水平拉伸的9面片图像,正如您在所附图像中看到的,我只在中间顶部绘制 预览中的第二个图像(中间的一个)显示了我认为错误的地方。我只想拉伸中间部分,所以我不明白为什么它没有显示图像的正确部分-褶边。我想,左边的部分还可以 感谢您的帮助 编辑:添加另一个图像以显示它,并启用“显示修补程序”和“显示内容”: 布局定义图像拉伸的程度和方向。9面片只能定义图像的哪些部分应拉伸,哪些部分不应拉伸。基本上可以从拉伸中排除部分图像。在您的示例中,左侧和右侧部分不会水平拉伸。但是,它们仍将垂直

我正在尝试创建一个仅水平拉伸的9面片图像,正如您在所附图像中看到的,我只在中间顶部绘制

预览中的第二个图像(中间的一个)显示了我认为错误的地方。我只想拉伸中间部分,所以我不明白为什么它没有显示图像的正确部分-褶边。我想,左边的部分还可以

感谢您的帮助

编辑:添加另一个图像以显示它,并启用“显示修补程序”和“显示内容”:


布局定义图像拉伸的程度和方向。9面片只能定义图像的哪些部分应拉伸,哪些部分不应拉伸。基本上可以从拉伸中排除部分图像。在您的示例中,左侧和右侧部分不会水平拉伸。但是,它们仍将垂直拉伸。由于您在垂直面上没有选择任何内容,因此图像会均匀拉伸。

在应用程序中它看起来如何?可能只是draw9patch工具没有正确预览它。试着把窗户拉得尽可能宽。此外,选中“显示内容”和“显示修补程序”复选框可能有助于向您显示该工具认为正在进行的操作


另外,请确保包含拉伸像素的托盘完全透明,宽度正好为1像素,并环绕整个位图。

是,我不希望它垂直拉伸。但正如第二次预览显示的,在应用程序中,图像没有显示正确的部分,即“褶边”。如果你没有定义一个可以拉伸的部分(因此明确排除了不应该拉伸的部分),Android将同样拉伸整个图像。在您的情况下,您没有在可以拉伸的高度中定义零件,因此整个高度是可拉伸的。如果你想让图像的高度始终保持不变,你需要在布局中定义它,而不是在图像中。我知道这一点。在我的版面中,我指定了layout\u width=“fill\u parent”和layout\u height=“wrap\u content”,并将此图像作为背景。发生的情况是,设备中没有显示正确的褶边;视图的高度非常完美。它看起来正好是右窗格中的第二个(中间)预览。我附加了另一个启用了“显示内容”和“显示补丁”的图像。图像确实在位图周围有1像素宽的透明行/列。