当前位置:   article > 正文

鸿蒙实现带字数提醒的输入文本框_鸿蒙输入字数长度限制

鸿蒙输入字数长度限制

前言:

DevEco Studio版本:4.0.0.600

API:10

        鸿蒙原生TextArea提供了一种实现带字数提醒的功能,但是通过测试发现虽然功能是实现了但是无法修改样式,没法满足我们的UI需求。

原生效果:

  

效果预览:

实现原理分析:

依据现有的TextArea组件,我们只需要不显示默认的数字提醒,然后再加入我们自定义的数字提醒就行了,至于怎么实现在右下角添加布局可以考虑stack布局组件,通过alignContent(Alignment.BottomEnd)方法设置在右下角。默认数字提醒只需设置showCounter(false)

代码实现:

  1. @Entry
  2. @Component
  3. struct TextAreas {
  4. @State text: string = ''
  5. @State maxLength: number = 50 //最大输入内容长度
  6. build() {
  7. Stack() {
  8. TextArea({ text: this.text, placeholder: '请输入内容' })
  9. .placeholderFont({ size: 16 })
  10. .width('100%')
  11. .flexGrow(1)
  12. .height(300)
  13. .fontSize(16)
  14. .barState(BarState.Off)
  15. .padding({ bottom: 40 })
  16. .fontColor(Color.Black)
  17. .maxLength(this.maxLength)//设置文本的最大输入字符数,到达文本最大字符限制,将无法继续输入字符,同时边框变为红色
  18. .backgroundColor('#F1F3F5')
  19. .onChange((value: string) => {
  20. this.text = value
  21. })
  22. Text() {
  23. Span(this.text.length.toString()).fontColor(Color.Black).fontSize(13)
  24. Span(`/${this.maxLength}`).fontColor('#999999').fontSize(13)
  25. }.margin({ right: 10, bottom: 10 })
  26. }
  27. .alignContent(Alignment.BottomEnd)
  28. .width('100%')
  29. .height(300)
  30. .padding(20)
  31. }
  32. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/887938
推荐阅读
相关标签
  

闽ICP备14008679号