MenuItem里的icon图标怎么改颜色

MenuItem里的icon图标怎么改颜色

HarmonyOS
2024-01-30 23:30:57
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
babebo

设置一个状态变量用来表示图标的路径,可以通过在onChange事件中,通过改变状体变量的值来改变一个该图标,改变的图标和原来的图标样式相同,颜色不同。

示例代码

@Entry 
@Component 
struct MenuTest { 
  @State select: boolean = true 
  @State iconStr: ResourceStr = $r("app.media.menu") 
  private iconStr2: ResourceStr = $r("app.media.app_icon") 
 
  @Builder 
  SubMenu() { 
    Menu() { 
      MenuItem({ content: "复制", labelInfo: "Ctrl+C" }) 
      MenuItem({ content: "粘贴", labelInfo: "Ctrl+V" }) 
    } 
  } 
 
  @Builder 
  MyMenu() { 
    Menu() { 
      MenuItem({ startIcon: $r("app.media.icon"), content: "菜单选项" }) 
      MenuItem({ startIcon: $r("app.media.icon"), content: "菜单选项" }) 
        .enabled(false) 
      MenuItem({ 
        startIcon: this.iconStr, 
        content: "菜单选项", 
        endIcon: $r("app.media.arrowRight"), 
        builder: (): void => this.SubMenu() 
      }) 
        .onChange((selected) => { 
          console.info("menuItem select" + selected); 
          this.iconStr = $r("app.media.menu1"); 
        }) 
      MenuItemGroup({ header: '小标题' }) { 
        MenuItem({ content: "菜单选项" }) 
          .selectIcon(true) 
          .selected(this.select) 
          .onChange((selected) => { 
            console.info("menuItem select" + selected); 
            this.iconStr2 = $r("app.media.icon"); 
          }) 
        MenuItem({ 
          startIcon: $r("app.media.menu"), 
          content: "菜单选项", 
          endIcon: $r("app.media.arrowRight"), 
          builder: (): void => this.SubMenu() 
        }) 
      } 
 
      MenuItem({ 
        startIcon: this.iconStr2, 
        content: "菜单选项", 
        endIcon: $r("app.media.arrowRight") 
      }) 
    } 
  } 
 
  build() { 
    Row() { 
      Column() { 
        Text('点击展示菜单') 
          .fontSize(50) 
          .fontWeight(FontWeight.Bold) 
      } 
      .bindMenu(this.MyMenu) 
      .width('100%') 
    } 
    .height('100%') 
  } 
}
分享
微博
QQ
微信
回复
2024-02-01 11:50:52
相关问题
怎么改通知上图标有知道吗?
4298浏览 • 1回复 待解决
如何修改应用icon图标
2154浏览 • 1回复 待解决
HarmonyOS icon图标
19浏览 • 1回复 待解决
HarmonyOS image图标怎么变成其他颜色
1111浏览 • 1回复 待解决
ArkUI转场动画可以颜色吗?
1914浏览 • 1回复 待解决
使用icon图标不清晰有锯齿
588浏览 • 1回复 待解决
buttom样式怎么改成透明
133浏览 • 0回复 待解决
怎么修改PNG图片颜色
538浏览 • 1回复 待解决
Canvas画时候,怎么设置画笔颜色
424浏览 • 1回复 待解决