HarmonyOS 弹出一个自定义弹窗,里面包含一个多行输入框,怎么让弹窗弹出的时候,输入框自动获取焦点?

HarmonyOS 弹出一个自定义弹窗,里面包含一个多行输入框,怎么让弹窗弹出的时候,输入框自动获取焦点?

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

在输入框上加上defaultFocus属性,即可在弹窗弹出时,输入框自动获焦。

@CustomDialog 
export struct BottomCommentBoxDialog { 
  @State placeholder: string = "我来说两句" 
  onComment?: (content:string )=>void 
  @State content: string = "" 
  controller: CustomDialogController = new CustomDialogController({ 
    builder: BottomCommentBoxDialog({}), 
  }) 
  editController: TextAreaController = new TextAreaController() 
  build() { 
    Row() { 
      TextArea({ text: this.content, placeholder: this.placeholder, controller: this.editController }) 
        .fontSize(16) 
        .fontFamily("normal") 
        .fontColor(Color.Black) 
        .placeholderColor(Color.Gray) 
        .placeholderFont({ family:"normal" }) 
        .onChange((value: string) => { 
          this.content = value 
        }) 
        .maxLines(3) 
        .constraintSize({ 
          minHeight:60, 
          maxHeight:110 
        }) 
        .layoutWeight(1) 
          // 自动获焦 
        .defaultFocus(true) 
      Text("发布").fontColor(this.content.trim().length == 0 ? Color.Gray : Color.Red).fontSize(17).fontFamily("normal").padding(13).onClick(()=>{ 
        if(this.onComment){ 
          this.onComment(this.content) 
        } 
      }) 
    }.padding({ 
      left: 13, 
      top: 10, 
      bottom: 30 
    }).width('100%').backgroundColor(Color.White).borderRadius(0) 
  } 
}
分享
微博
QQ
微信
回复
2天前
相关问题
js如何清空一个input 输入框内容
7652浏览 • 1回复 待解决
HarmonyOS 自定义键盘不能顶起输入框
264浏览 • 1回复 待解决
HarmonyOS 输入框无法对齐
299浏览 • 1回复 待解决
如何实现一个自定义询问
364浏览 • 1回复 待解决
HarmonyOS 监听输入框删除键
23浏览 • 1回复 待解决