0

我是一名设计师,目前正在与我的开发人员合作开发一个 Android 应用程序,该应用程序基本上加载了一个 ImageView,我们希望在它周围应用一个 1px 的灰色边框,底部有一个 2px 的阴影。

我创建了一个 9 补丁文件,开发人员已将其应用于 ImageView,但我注意到 Android 似乎将边框加倍。

这是 9 个补丁图像:http: //imgur.com/l1yXTyr

这意味着现在它不再是顶部、左侧和右侧的 1px 边框。将其设置为左侧2px,右侧3px!

所以,我问你们非常聪明的人:-

  1. 这是 9 补丁创建的问题吗?
  2. 如果可以通过代码完成,您能否指出我正确的方向?

非常感谢所有回复指针和建议的人。这是非常赞赏。

4

1 回答 1

2

我猜你把 9-patch drawable 放在 res/drawable-mdpi 中,然后在 hdpi 设备上运行应用程序。Android 升级了可绘制对象,这几乎总是不是你想要的。

有两种解决方案,具体取决于您的 9-patch 的外观:

  1. 如果 9-patch 只有 1px 框架和 2px 阴影,并且没有需要缩放的区域例如 padding),您可以将 9-patch 放在 drawable-nodpi 文件夹中。
  2. 如果有一些区域需要缩放,并且您希望在每个设备上精确地拥有 1px 帧,则您必须为每个像素密度准备 9 个补丁,并具有适当调整大小的可缩放区域和 1px 帧。
于 2013-02-26T07:50:17.187 回答