首页 > 解决方案 > 如何在android studio自定义视图中为底部Mac栏绘制曲线

问题描述

所以我刚开始在android studio中学习自定义视图,所以我决定创建一个底部导航栏,围绕按下的图标弯曲,目前的问题是获得图标周围曲线的贝塞尔曲线,我尝试使用两个path.cubicTo(); 但我的曲线不断扭曲。这是我希望实现的:1

到目前为止,这是我取得的成就:2

当前代码进度(添加了一些伪代码,因为我不想粘贴完全相同的代码导致行数):

@Override
protected void onDraw(Canvas canvas){
Path.moveTo(0,getHeight-130);
Path.cubicTo(0,getHeight-130,0,getHeight-130,getWidth+100,getHeight-10);
Path.cubicTo(getWidth+100,getHeight-10,getWidth+100,getHeight-10,getWidth+200,getHeight-130);
Path.LineTo(getWidth(),getHeight-130);

我想要实现的只是曲线,导航栏在被按下后如何从一条直线变成一条围绕图标的曲线,我需要先了解如何制作这样的曲线,然后再完全创建整体导航栏,这就是我使用原始值的原因,我希望任何回答使用原始值和更少变量的人,因为这将帮助我看到它是如何像在缩放的方格纸上那样以图形方式绘制的。

标签: androidandroid-studiocanvasviewandroid-custom-view

解决方案


推荐阅读