我的问题就像标题说:为什么我们需要9补丁图像?它们真的那么重要吗?实际上,他们到底是做什么的?我不清楚9补丁图像的概念。
我知道9补丁图像是可伸缩的。因此,假设我有一些图像按钮,完全适合我的ldpi设备。使用绘图9补丁工具( android的一部分),我可以标记可伸缩的区域,这个图像将很好地适合hdpi,甚至xhdpi设备。边缘会很光滑。
但是,这是一个好的实践,还是仅仅是一种选择呢?应该为ldpi、mdpi、hdpi和xhdpi设备创建每个映像吗?还是我可以在一个映像上使用Android SDK“绘制9补丁”,让Android处理各种设备?
我不关心边缘,而是图片的实际内容。内容也是可伸缩的吗?
发布于 2013-05-13 12:08:56
内容是可伸缩的,边缘不会被缩放,在典型的使用中。
它们通常用于按钮或其他屏幕装饰的背景,其中缩放的内容可以无限缩放,而不会丢失分辨率的。
理想情况下,它们是在适当的情况下与密度相关的资源一起使用的,这样资源的部分(您没有显式地声明它是可伸缩的)不会被向上缩放并随后被像素化。
考虑一下Android上Kindle应用程序的splash屏幕,它的特征是那个男孩靠树阅读的剪影。在一个简化的版本中,地面可以无限地水平缩放,但如果男孩被缩放,他就会出现倾斜。因此,您可以使用一个九个补丁并指定可以缩放的部分,以及哪个方向。
不过,这还不够--如果只包含低分辨率资源,如果设备显示的密度较高,则资源最初仍将被放大。在这种情况下,男孩可能看起来模糊从升级,并是一个例子,当一个更高的分辨率资源可以帮助防止像素化。
你对这个问题的措辞(对我来说)意味着,你在问9补丁图像是否可以替换所有可绘制的资源,比如图标或资源中的图片,答案是否定的。它们只用于缩放以单一颜色块(即不能像素化的部分)为特征的资源段。
--
http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch
发布于 2013-05-13 12:10:15
在Android9中,当你想要你的图像的一部分进行缩放,而其他的部分保持原来的尺寸时,就会使用补丁。我想到的第一个应用是你说过的角落。所以你把它们用在那种情况下。
另一方面,如果你想要你的资源以良好的质量出现(没有模糊),你应该使用替代资源(ldpi,hdpi .)
看看这里:屏幕支撑
发布于 2013-05-13 12:10:51
9补丁背后的逻辑是,您不缩放角。
https://stackoverflow.com/questions/16521594
复制相似问题