OpenHarmony菜单图标大小调整指南
一、常见菜单场景与图标来源
二、ArkUI 实现方式(API 9+,推荐)
@Entry
@Component
struct NavMenuIconSizeDemo {
build() {
Navigation() {
// 页面内容
}
.menus([
{
value: 'add',
icon: $r('app.media.ic_add'), // 建议准备多套尺寸:ic_add_24 / ic_add_32 / ic_add_48
action: () => { }
},
{
value: 'app',
icon: $r('app.media.ic_app'),
action: () => { }
}
])
.title('带图标菜单')
}
}
如需不同屏幕统一观感,可准备多套分辨率图标并按断点替换,或在 Image 上设置固定的 .width/.height(如 24vp/32vp/48vp)。@State showMenu: boolean = false
build() {
Column() {
Button('Show Menu').onClick(() => { this.showMenu = true })
if (this.showMenu) {
Menu() {
MenuItem({
startIcon: $r('app.media.ic_copy'),
content: '复制'
})
MenuItem({
startIcon: $r('app.media.ic_paste'),
content: '粘贴'
})
}
.width(200)
.backgroundColor(Color.White)
}
}
}
如需符号图标,使用 symbolStartIcon/symbolEndIcon(API 12+),并通过 SymbolGlyphModifier 设置 fontSize 来控制符号图标大小。三、JS UI 实现方式(自定义组件)
<!-- 引入自定义icon组件 -->
<element src="../../common/icon/icon.hml" name="icon"></element>
<!-- 使用size控制图标大小 -->
<icon name="chat_o" size="48" color="#ED6F21"></icon>
<icon name="common/images/huawei.png" size="32"></icon>
该方式适合需要快速统一图标风格与尺寸的场景。四、尺寸规范与适配建议
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。