HarmonyOS 如何延迟一秒后执行某项操作

HarmonyOS
3天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

可以添加一个定时器,到时间后就会执行需要的操作,示例如下:

@Entry
@Component
export struct BookingBallFieldItemView {
  @State item: string = 'xxxx'
  @State detailIsShow: Visibility = Visibility.None
  fontStyleAttr1: TextStyle = new TextStyle({ fontColor: '#ffae18ff' });
  mutableStyledString1: MutableStyledString = new MutableStyledString(this.item, [{
    start: 2,
    length: 1,
    styledKey: StyledStringKey.FONT,
    styledValue: this.fontStyleAttr1
  }]);
  controller2: TextController = new TextController();

  async onPageShow() {
    this.controller2.setStyledString(this.mutableStyledString1)
  }

  build() {
    Column() {
      Row() {
        Column() {
          Flex({ direction: FlexDirection.Row, justifyContent: FlexAlign.Start }) {
            Text(undefined, { controller: this.controller2 })
              .fontColor('#333333')
              .fontSize(16)
              .maxLines(1)
              .height(20)
              .textAlign(TextAlign.Start)
              .textOverflow({ overflow: TextOverflow.Ellipsis })
              .key('mutableStyledString1')
              .onClick(() => {
                setTimeout(() => {
                  this.detailIsShow = Visibility.Visible
                }, 3000)


              })
            Text('玄幻小说').visibility(this.detailIsShow).margin({ left: 30 })
          }.width("100%")
        }
        .layoutWeight(1)
        .margin({ left: 15, top: 12 })
        .alignItems(HorizontalAlign.Start)
        .justifyContent(FlexAlign.Start)
      }.width('100%').justifyContent(FlexAlign.Start)
    }
  }
}
分享
微博
QQ
微信
回复
3天前
相关问题
HarmonyOS 代码延迟时间执行方法
487浏览 • 1回复 待解决
延迟任务什么时候会执行
1707浏览 • 1回复 待解决
延迟任务执行时机及运行线程
2117浏览 • 1回复 待解决
根据list中某项的id如何sort排序
323浏览 • 1回复 待解决
HarmonyOS 推送消息延迟
50浏览 • 1回复 待解决
HarmonyOS WebView 延迟加载图片
108浏览 • 1回复 待解决
HarmonyOS setInterval如何立即执行
65浏览 • 1回复 待解决
SurfaceProvider绘制延迟
7522浏览 • 4回复 已解决