相关问题
如何自定义 web 组件里网页文本的长按菜单
2873浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何自定义Navigation组件中的菜单栏?
971浏览 • 1回复 待解决
如何在Text组件关闭bindSelection自定义菜单时,取消选中状态
888浏览 • 1回复 待解决
HarmonyOS webview 自定义菜单如何拿到选中的文字
466浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用@Builder自定义菜单内容
875浏览 • 1回复 待解决
HarmonyOS 自定义UI组件如何自定义属性方法
1241浏览 • 1回复 待解决
Harmony OS 文本自定义菜单的划线功能
304浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何通过bindMenu属性绑定自定义菜单
658浏览 • 1回复 待解决
HarmonyOS 自定义组件如何写自定义事件?
1463浏览 • 1回复 待解决
HarmonyOS 文本怎么自定义识别高亮显示和自定义点击事件显示菜单/气泡?
1073浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中实现自定义菜单样式?
1086浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何为自定义组件实现自定义布局?
821浏览 • 1回复 待解决
HarmonyOS 定义自定义组件
949浏览 • 1回复 待解决
HarmonyOS 长按桌面图标,能否自定义弹出菜单?
1053浏览 • 1回复 待解决
自定义组件如何导出、引入?
3107浏览 • 1回复 待解决
HarmonyOS 如何自定义布局组件
631浏览 • 1回复 待解决
HarmonyOS 如何自定义toast组件
784浏览 • 1回复 待解决
HarmonyOS 如何自定义 ArkUI Select(下拉菜单)的布局和样式?
1687浏览 • 1回复 待解决
ArkTs如何自定义容器组件?
3957浏览 • 1回复 待解决
如何自定义模拟Tabs组件
1601浏览 • 1回复 待解决
HarmonyOS 自定义了一个组件,如何自定义事件?使其能在父组件使用其自定义事件
689浏览 • 1回复 待解决
HarmonyOS 父页面如何调用自定义组件内自定义方法
963浏览 • 1回复 待解决
HarmonyOS 应用怎么自定义桌面图标长按的菜单
1368浏览 • 1回复 待解决
HarmonyOS 自定义组件如何获取高度?
950浏览 • 1回复 待解决
HarmonyOS如何手动重置自定义组件?
1020浏览 • 1回复 待解决
本文自定义一个圆形菜单,这个菜单栏的每个Item环形排布。
使用的核心API
核心代码解释
先定义组件CustomLayout,再通过onMeasure与onLayout对菜单项进行尺寸丈量和布局,我们先看看丈量尺寸的代码具体如下
代码比较简单,就是先获取父布局的最大尺寸,然后测量每个菜单项的尺寸。尺寸获取后就是到了布局这一步了,这也是整个圆形菜单的核心。具体代码如下。
onLayout函数看起来稍微复杂,但它的含义就是将所有子项按照圆弧的形式布局。整个圆为360°,如果每个子项占用的角度为60°,第一个就是0~60,第二个就是60°~120°,以此类推将所有的子项按照圆形布局。
实现效果