首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Android中创建带圆角边框的自定义视图

如何在Android中创建带圆角边框的自定义视图
EN

Stack Overflow用户
提问于 2016-01-27 00:35:04
回答 2查看 939关注 0票数 0

嗨,

我正在尝试理解如何在Android上制作自定义视图(带有绿色背景),如附件中的图像所示。请建议,我应该将Path用于此操作还是其他操作?

EN

回答 2

Stack Overflow用户

发布于 2016-01-27 00:48:19

http://tips.androidhive.info/2013/09/android-layout-rounded-corner-border/是一个很好的起点。然后,您可以使用属性值来获得所需的背景。希望这能有所帮助。

票数 0
EN

Stack Overflow用户

发布于 2016-01-27 01:52:50

您有两个很好的选择来实现这一点。

位图

创建所需的图像在Photoshop,Gimp或类似的东西。将其导出为png文件,然后将其作为bitmap resource导入到您的安卓应用程序中。

到目前为止,这是两种方法中更简单、更快的一种,但这里有两个重要的问题。首先,你应该使用supply bitmaps for each screen density bucket。其次,您添加的每个位图资源都会增加应用程序的安装大小。这可能很快就会失控。

路径

正如您在问题中提到的,您可以使用Path直接在画布上绘制所需的形状。更具体地说,您将使用cubicTo()方法来创建贝塞尔曲线。

我建议使用图像编辑器的“路径”工具来了解控制点是如何影响曲线的。一旦你在图像编辑器中绘制了形状,写下路径上每个点的坐标以及相应的控制点。然后做一些数学运算,将这些点转换为图像整体宽度和高度的比率。

您可以在应用程序中将形状实现为ViewDrawable。在这两种情况下,您都将绘制到一个Canvas。重要的一步是通过将比例与绘图区域的大小相乘来设置路径。在您绘制了奇特的边缘之后,请确保使用lineTo()绘制直线边缘,并使用close()关闭形状。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35018942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档