鸿蒙UI系统组件03——文本输入(TextInput/TextArea)
头像 蓝亭书序 2026-08-13 17:55:23    发布
0 浏览 0 点赞 0 收藏

1、概述

TextInput、TextArea是输入框组件,通常用于响应用户的输入操作,比如评论区的输入、聊天框的输入、表格的输入等,也可以结合其它组件构建功能页面,例如登录注册页面。

2、创建输入框

TextInput为单行输入框、TextArea为多行输入框。通过以下接口来创建。


TextArea(value?:{placeholder?: ResourceStr, text?: ResourceStr, controller?: TextAreaController})

TextInput(value?:{placeholder?: ResourceStr, text?: ResourceStr, controller?: TextInputController})


  • 单行输入框


TextInput()

图片

  • 多行输入框


TextArea()

图片

多行输入框文字超出一行时会自动折行。


TextArea({text:"我是TextArea我是TextArea我是TextArea我是TextArea"}).width(300)

图片

3、设置输入框类型

TextInput有5种可选类型,分别为Normal基本输入模式、Password密码输入模式、Email邮箱地址输入模式、Number纯数字输入模式、PhoneNumber电话号码输入模式。通过type属性进行设置:

  • 基本输入模式(默认类型)


TextInput()
  .type(InputType.Normal)

图片

  • 密码输入模式


TextInput()
  .type(InputType.Password)

图片

4、自定义样式

  • 设置无输入时的提示文本。

TextInput({placeholder:'我是提示文本'})


TextInput({placeholder:'我是提示文本'})

图片

  • 设置输入框当前的文本内容。


TextInput({placeholder:'我是提示文本',text:'我是当前文本内容'})

图片

  • 添加backgroundColor改变输入框的背景颜色。


TextInput({placeholder:'我是提示文本',text:'我是当前文本内容'})
  .backgroundColor(Color.Pink)

图片

除以上属性外,还有一些通用属性,例如:width、height、padding、margin、等不展开说明。

5、添加事件

文本框主要用于获取用户输入的信息,把信息处理成数据进行上传,绑定onChange事件可以获取输入框内改变的内容。用户也可以使用通用事件来进行相应的交互操作。


TextInput()
  .onChange((value: string) => {
    console.info(value);
  })
  .onFocus(() => {
    console.info('获取焦点');
  })



6、demo

一个用户登录界面案例:

图片


@Entry
@Component
struct TextInputSample {
  build() {
    Column() {
      TextInput({ placeholder: 'input your username' }).margin({ top: 20 })
        .onSubmit((EnterKeyType)=>{
          console.info(EnterKeyType+'输入法回车键的类型值')
        })
      TextInput({ placeholder: 'input your password' }).type(InputType.Password).margin({ top: 20 })
        .onSubmit((EnterKeyType)=>{
          console.info(EnterKeyType+'输入法回车键的类型值')
        })
      Button('Sign in').width(150).margin({ top: 20 })
    }.padding(20)
  }
}



©本站发布的所有内容,包括但不限于文字、图片、音频、视频、图表、标志、标识、广告、商标、商号、域名、软件、程序等,除特别标明外,均来源于网络或用户投稿,版权归原作者或原出处所有。我们致力于保护原作者版权,若涉及版权问题,请及时联系我们进行处理。
分类
HarmonyOS
头像

蓝亭书序

我还没有写个人简介......

28

帖子

0

提问

0

粉丝

关注
最新发布

鸿蒙UI系统组件02——按钮(Button)

2026-08-07 14:42:01    发布
热门推荐
地址:北京市朝阳区北三环东路三元桥曙光西里甲1号第三置业A座1508室 商务内容合作QQ:2291221 电话:13391790444或(010)62178877
版权所有:电脑商情信息服务集团 北京赢邦策略咨询有限责任公司
声明:本媒体部分图片、文章来源于网络,版权归原作者所有,我司致力于保护作者版权,如有侵权,请与我司联系删除

京ICP备:2022009079号-2

京公网安备:11010502051901号

ICP证:京B2-20230255