HarmonyOS 如何实现点击一个按钮,让textinput获取焦点?

如何实现点击一个按钮,让textinput获取焦点。点击语音按钮,输入框获取焦点并打开键盘。

HarmonyOS
2024-10-28 10:33:55
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

​相关文档参考:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-universal-attributes-focus-V5#ZH-CN_TOPIC_0000001893370797__requestfocus9

通过focusControl.requestFocus,实现输入账号后,点击登录按钮后,代码主动设置TextInput获取焦点,可参考下面demo​。

Button("登  录")  
  .width(200)  
  .height(45)  
  .fontSize(28)  
  .type(ButtonType.Normal)  
  .backgroundColor("#30FFFFFF")  
  .border({ width: 1, color: Color.White, radius: 8 })  
  .margin({ top: 50, bottom: 60 })  
  .onClick(() => {  
    let LoginForm: LoginForm = {  
      username: this.username,  
      password: this.password  
    }  
    let requestId = ""  
    // todo: 无法使用for..in遍历对象  
    if (!LoginForm.username) {  
      requestId = "username"  
    } else if (!LoginForm.password) {  
      requestId = "password"  
    } else {  
      promptAction.showToast({ message: 'Login success' })  
      return  
    }  
    let res = focusControl.requestFocus(requestId) // 使选中的this.selectId的组件获焦,这里要注意获焦的id要与组件的id保持一致  
    promptAction.showToast({ message: requestId + '不能为空' })  
  })
分享
微博
QQ
微信
回复
2024-10-28 16:26:46
相关问题
如何设置一个通知按钮
313浏览 • 1回复 待解决
HarmonyOS TextInput焦点问题
318浏览 • 1回复 待解决
TextInput组件获取焦点的几种场景
2479浏览 • 1回复 待解决
如何实现按钮点击效果?
344浏览 • 2回复 待解决
HarmonyOS TextInput 取消默认焦点
422浏览 • 1回复 待解决
HarmonyOS TextInput无法取消焦点
214浏览 • 1回复 待解决
HarmonyOS 如何实现一个转圈效果
569浏览 • 2回复 待解决
HarmonyOS 如何实现一个遮罩层
311浏览 • 1回复 待解决
TextInput如何取消自动获得焦点
448浏览 • 1回复 待解决