HarmonyOS 鸿蒙Next Navigation menu 图标不生效
HarmonyOS 鸿蒙Next Navigation menu 图标不生效
【关键字】
API 10 / 资源调用 / Navigation组件 / menu图标
【问题描述】
代码实现示例如下:
build() {
Column() {
Navigation() {
if (this.ShowBottomHairline) {
Divider()
.height(0.7)
.backgroundColor($r(‘app.color.LINE_COLOR’))
.width(‘100%’)
.shadow({ radius: 4, color: 0xA1B5CD, offsetX: 0, offsetY: 2 }).zIndex(1000000)
}
if (this.contentView !== undefined) {
this.contentView()
}
}
.width(‘100%’)
.title(this.NavigationTitle())
.titleMode(NavigationTitleMode.Mini)
.hideTitleBar(false)
.hideToolBar(true)
.backgroundColor(this.bgColor)
.backButtonIcon($r(‘app.media.nav_btn_back_padding’))
.menus([{value: “”, icon: ‘…/…/resources/base/media/home.png’, action: ()=>{}}])
}
}
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
鼠标按一下导航栏菜单位置可以发现按钮有在,但图标不显示,可以确认图片资源存在。
【解决方案】
在ets目录下新建image文件夹存储图片,icon: “./image/icon.png” 即可正常显示图片,或者使用CustomBuilder的方式也可以实现效果。
3 回复
这不应该是一个缺陷吗,既然有ResourceStr的引用方式,居然唯独这个menus的icon不能用
现在引用resource好像还是不行
HarmonyOS 鸿蒙Next Navigation menu图标不生效可能由多种原因引起,如资源路径错误、图标文件损坏或配置问题。请检查图标资源是否已正确放置在项目的指定目录下,并确保路径引用无误。同时,确认Navigation组件的配置是否正确,包括图标的引用方式。如果问题依旧没法解决,请加我微信,我的微信是itying888,我将进一步协助排查问题。