Button等控件设置点击效果

Button等控件设置点击效果

HarmonyOS
2024-06-05 21:12:59
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Sunny3141

@Styles自定义组件样式目前只支持CommonAttribute下的通用属性( declare class CommonAttribute extends CommonMethod<CommonAttribute> ),Button下的fontColor属性属于ButtonAttribute下的属性(declare class ButtonAttribute extends CommonMethod<ButtonAttribute> ),所以在@Styles中自定义样式中使用fontColor时IDE会报错“Property ‘fontColor’ does not exist on type ‘CommonAttribute’. <ArkTSCheck>”,可通过状态变量来实现Button不同状态下的ButtonAttribute属性修改。

示例代码

@Entry 
@Component 
struct TextExample6 { 
  // 通过状态变量来触发Button非通用属性刷新 
  @State bFontColor: string = '#000000' // Button字体颜色状态变量 
  @State bFontSize: string = '15' // Button字体大小状态变量 
 
  build() { 
    Button('我的按钮') 
      .fontColor(this.bFontColor) 
      .fontSize(this.bFontSize) 
      .stateStyles({ 
        normal: this.normalStyles, 
        pressed: this.pressedStyles, 
        disabled: this.disabledStyles, 
      }) 
      .onTouch((event?: TouchEvent) => { 
        // 触摸逻辑,通过判touchEvent的type修改状态变量触发Button刷新样式 
        if (event.type == TouchType.Up) { 
          // 按下 
          this.bFontColor = '#000000' 
          this.bFontSize = '15' 
        } else if (event.type == TouchType.Move) { 
          // 移动 
          this.bFontColor = '#FFFF00' 
          this.bFontSize = '40' 
        } 
        else { 
          // 松开/取消 
          this.bFontColor = '#00FFFF' 
          this.bFontSize = '20' 
        } 
      }) 
  } 
}
分享
微博
QQ
微信
回复
2024-06-06 21:31:19
相关问题
「多态控件」的效果样式确认
474浏览 • 1回复 待解决
Button组件如何设置渐变背景色
956浏览 • 1回复 待解决
点击事件,@State 页面未生效,在线
1340浏览 • 0回复 待解决
Java Text控件,如何设置字间距?
5464浏览 • 1回复 待解决
组件如何设置模糊效果
583浏览 • 1回复 待解决
如何设置组件透明效果
545浏览 • 1回复 待解决
控件enabled设置为false时,hover失效
621浏览 • 1回复 待解决
请问Image控件是怎样设置网络图片的
8855浏览 • 3回复 已解决
服务卡片java如何设置点击事件
7823浏览 • 1回复 待解决
如何设置图片的高斯模糊效果
1122浏览 • 1回复 待解决