在android上绘制非矩形形状

时间:2012-05-06 00:44:23

标签: android android-layout

我尝试用android xml drawables实现这个形状:

enter image description here

我能够得到矩形,但我可以想出得到三角形尖端。我还需要对这个形状应用渐变。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

我认为利用XML drawables是通过9-patch drawable创建一个剪贴图,然后将其投影到一个可绘制的矩形上。

这可能需要一个自定义的可绘制类。我搜索并发现这个Q / A可以解决问题的这一部分。 Masking a Drawable/Bitmap on Android

查看SDK文档ClipDrawable意味着它会对此有所帮助,但事实证明它可能是一个命名不佳的类。它没有按照我的想法做到。

更简单的方法是从对象本身创建一个9补丁。不幸的是,当你这样做时,你会失去梯度灵活性。

答案 1 :(得分:0)

您可以使用9-patch绘制它。

http://developer.android.com/tools/help/draw9patch.html

只需用三角形尖端修剪一条小路径,然后像这样check this link制作9个补丁,然后使用可绘制的形状在它上面绘制渐变。