相关问题
如何自定义 web 组件里网页文本的长按菜单
2142浏览 • 1回复 待解决
如何在Text组件关闭bindSelection自定义菜单时,取消选中状态
340浏览 • 1回复 待解决
HarmonyOS 自定义组件如何写自定义事件?
415浏览 • 1回复 待解决
HarmonyOS 自定义UI组件如何自定义属性方法
305浏览 • 1回复 待解决
如何自定义模拟Tabs组件
814浏览 • 1回复 待解决
ArkTs如何自定义容器组件?
2989浏览 • 1回复 待解决
自定义组件如何导出、引入?
2218浏览 • 1回复 待解决
自定义组件嵌套子组件
9350浏览 • 3回复 待解决
js 自定义组件如何传递方法?
5785浏览 • 2回复 待解决
如何设置自定义组件height缺省
1784浏览 • 1回复 待解决
自定义组件中如何添加图片?
2530浏览 • 1回复 待解决
HarmonyOS如何自定义组件的Controller?
219浏览 • 1回复 待解决
HarmonyOS如何自定义视频组件样式
356浏览 • 1回复 待解决
HarmonyOS 文本怎么自定义识别高亮显示和自定义点击事件显示菜单/气泡?
322浏览 • 1回复 待解决
HarmonyOS如何手动重置自定义组件?
269浏览 • 1回复 待解决
HarmonyOS 自定义组件问题
294浏览 • 1回复 待解决
HarmonyOS Navigation组件现在支持自定义返回图标吗?如何自定义修改呢?
456浏览 • 1回复 待解决
HarmonyOS如何在自定义组件的自定义函数中获取当前的 NavPathStack
488浏览 • 1回复 待解决
如何实现一个自定义的Controller? 自定义的Controller与自定义的组件page如何进行交互?
1897浏览 • 1回复 待解决
HarmonyOS 长按桌面图标,能否自定义弹出菜单?
190浏览 • 1回复 待解决
HarmonyOS自定义组件增加方法如何实现
322浏览 • 1回复 待解决
如何自定义Video组件控制栏样式
2289浏览 • 1回复 待解决
swiper组件如何实现自定义切换动画
626浏览 • 1回复 待解决
自定义弹框如何宽度全屏,高度自定义
1067浏览 • 1回复 待解决
HarmonyOS 如何自定义 ArkUI Select(下拉菜单)的布局和样式?
426浏览 • 1回复 待解决
本文自定义一个圆形菜单,这个菜单栏的每个Item环形排布。
使用的核心API
核心代码解释
先定义组件CustomLayout,再通过onMeasure与onLayout对菜单项进行尺寸丈量和布局,我们先看看丈量尺寸的代码具体如下
代码比较简单,就是先获取父布局的最大尺寸,然后测量每个菜单项的尺寸。尺寸获取后就是到了布局这一步了,这也是整个圆形菜单的核心。具体代码如下。
onLayout函数看起来稍微复杂,但它的含义就是将所有子项按照圆弧的形式布局。整个圆为360°,如果每个子项占用的角度为60°,第一个就是0~60,第二个就是60°~120°,以此类推将所有的子项按照圆形布局。
实现效果