TextInput在聚焦时如何使光标回到起点?

TextInput在聚焦时如何使光标回到起点

阅读 166
1 个回答

解决措施

  1. TextInput组件绑定onEditChange事件,该事件可以在TextInput进行输入时触发。
  2. 在事件回调用TextInputController.caretPosition方法设置光标位置,并需要用到setTimeout延迟方法。

代码示例

@Entry 
@Component 
struct TextInputDemo { 
  controller: TextInputController = new TextInputController(); 
 
  build() { 
    Column() { 
      TextInput({ controller: this.controller }) 
        .onEditChange((isEditing: boolean) => { 
          if (isEditing) { 
            setTimeout(() => { 
              this.controller.caretPosition(0); 
            }, 100) 
          } 
        }) 
    } 
  } 
}

参考链接

TextInput组件

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
HarmonyOS
子站问答
访问
宣传栏