如何从图像创建9patch,一边是图标

时间:2016-05-06 13:37:41

标签: android nine-patch

我想9点这张图片,但我似乎无法

我已经尝试了解这里提到的事情https://software.intel.com/en-us/xdk/articles/android-splash-screens-using-nine-patch-png,但我似乎无法将它们应用到我的形象

有什么想法吗?是的,图标四舍五入没有帮助......

enter image description here

4 个答案:

答案 0 :(得分:0)

根据链接的页面,您可以画出定义可伸缩色块的线条。"。在您的情况下,可拉伸部分似乎是徽标的左侧,直到左半圆开始。

我添加了一个带有超大拉伸线的图像来标记水平拉伸部分。

9-patch with overemphazised stretch line

答案 1 :(得分:0)

无法仅使用9路径使用您的图像。您的任务的最佳实践 - 使用9路径的多个图像。也许创建自定义视图。

1)正如您所看到的,第一张图片,蓝色的父母,应该包含9条路径(在没有内部图像的情况下很容易制作)。

2)为了最好地查看任何设备,您需要为第二个图像创建另一个东西(使用facebook char)。循环的9条路 - 不是最好的主意。所以我建议你使用holder,xml canvas background和char" f"在前景。

3)现在你需要把这个全部放在一个FrameLayout中,你将在任何地方使用它。所有结构将如下所示:

<FrameLayout> // You may create custom view instead of FrameLayout
              // for more flexible and understanding 

   <BlueImageBackground.9path
    gravity=center>
   </BlueImageBackground.9path>

   <WhiteImageFacebokChar
    gravity= center_vertical | left>
   </WhiteImageFacebokChar>

</ FrameLayout>

因此,在任何屏幕中,此图像都会以相同的方式显示......

答案 2 :(得分:0)

您应首先编辑您提供的源图像,我的版本:

enter image description here

在sdk / tools文件夹中有draw9patch工具,因此您可以使用它来编辑它。你会看到这样的东西:

enter image description here

答案 3 :(得分:0)

嗨,最好创建一个空的9补丁图像&#34;没有徽标&#34;然后将其设置为相对布局的背景,然后将图像视图添加到相对布局并添加到ImageView:

  

机器人:layout_alignParentBottom =&#34;真&#34;

     

机器人:layout_alignParentRight =&#34;真&#34;

此外,您必须调整图像视图的边距以获得所需的结果。

请注意,此方法不会拉伸图标&amp;它需要对图像大小和填充进行一些微调以获得所需的结果: - )