相关问题
如何自定义 web 组件里网页文本的长按菜单
907浏览 • 1回复 待解决
如何自定义模拟Tabs组件
363浏览 • 1回复 待解决
ArkTs如何自定义容器组件?
1542浏览 • 1回复 待解决
自定义组件如何导出、引入?
819浏览 • 1回复 待解决
自定义组件嵌套子组件
7837浏览 • 3回复 待解决
如何设置自定义组件height缺省
491浏览 • 1回复 待解决
js 自定义组件如何传递方法?
4524浏览 • 2回复 待解决
自定义组件中如何添加图片?
1106浏览 • 1回复 待解决
如何实现一个自定义的Controller? 自定义的Controller与自定义的组件page如何进行交互?
603浏览 • 1回复 待解决
如何自定义Video组件控制栏样式
802浏览 • 1回复 待解决
鸿蒙组件toast自定义样式
7158浏览 • 1回复 待解决
自定义弹窗自定义转场动画
382浏览 • 1回复 待解决
自定义弹框如何宽度全屏,高度自定义
535浏览 • 1回复 待解决
ArkUI如何实现自定义组件传递点击事件
1466浏览 • 2回复 待解决
自定义组件如何实现类似系统组件的链式调用
325浏览 • 1回复 待解决
JAVA卡片怎么用自定义组件?
4779浏览 • 1回复 待解决
自定义组件是否支持renderFit属性
535浏览 • 1回复 待解决
自定义组件如何增加自己的对外方法
591浏览 • 1回复 待解决
如何访问自定义文件?
317浏览 • 1回复 待解决
如何自定义Component 属性
13364浏览 • 3回复 待解决
鸿蒙下如何自定义组件,并能让其他开发者使用我所自定义的组件呢(本人小白)
808浏览 • 0回复 待解决
Grid组件的scrollBar是否支持自定义
803浏览 • 1回复 待解决
自定义组件什么时候销毁
591浏览 • 1回复 待解决
自定义组件拖动边框:实现自定义组件通过拖动上下左右边框改变其大小
370浏览 • 1回复 待解决
自定义日历组件,开发中,自定义生成需要的日历格式方法有哪些?
398浏览 • 1回复 待解决
本文自定义一个圆形菜单,这个菜单栏的每个Item环形排布。
使用的核心API
核心代码解释
先定义组件CustomLayout,再通过onMeasure与onLayout对菜单项进行尺寸丈量和布局,我们先看看丈量尺寸的代码具体如下
代码比较简单,就是先获取父布局的最大尺寸,然后测量每个菜单项的尺寸。尺寸获取后就是到了布局这一步了,这也是整个圆形菜单的核心。具体代码如下。
onLayout函数看起来稍微复杂,但它的含义就是将所有子项按照圆弧的形式布局。整个圆为360°,如果每个子项占用的角度为60°,第一个就是0~60,第二个就是60°~120°,以此类推将所有的子项按照圆形布局。
实现效果