当前位置: 首页 > article >正文

鸿蒙开发选择表情

鸿蒙开发选择表情

动态评论和聊天信息都需要用到表情,鸿蒙是没有提供的,得自己做

一、思路:

用表情字符显示表情,类似0x1F600代表笑脸

二、效果图:

在这里插入图片描述

三、关键代码:
// 联系:893151960
Column() {


          Swiper() {
            ForEach(CommonConstants.EMOJI_DATA, (emojiData: number[], index1: number) => {
              Column() {
                Grid() {
                  ForEach(emojiData, (item: number, index2: number) => {
                    GridItem() {
                      Stack() {
                        Text(String.fromCodePoint(item)).fontColor($r('app.color.color_black')).fontSize(24)
                      }
                      .width('100%')
                      .height('100%')
                      .onClick(() => {

                        let offsetIndex: number = this.textController.getCaretOffset().index // 光标位置
                        this.commentText = `${this.commentText.slice(0,
                          offsetIndex)}${String.fromCodePoint(item)}${this.commentText.slice(offsetIndex,
                          this.commentText.length)}`
                      })
                    }
                  })
                }
                .columnsTemplate('1fr 1fr 1fr 1fr 1fr 1fr 1fr')
                .rowsTemplate('1fr 1fr 1fr 1fr')
                .width('100%')
                .aspectRatio(7 / 4)
              }
              .width('100%')
              .padding({ bottom: 8 })
            })
          }
          .width('100%')
          .loop(false)
          .backgroundColor($r('app.color.color_ed'))
          .padding(8)
        }
        .padding(12)
四、项目demo源码结构图:

在这里插入图片描述
有问题或者需要完整源码demo的私信我


http://www.kler.cn/news/331577.html

相关文章:

  • 栈数据结构:定义,基本操作与应用
  • 1G,2G,3G,4G,5G各代通信技术的关键技术,联系和区别
  • MySQL-增删改查操作(1)
  • grafana全家桶-loki promtail收集k8s容器日志
  • TCP、UDP
  • Java 异常一口气讲完!(_ _)。゜zzZ
  • 【SQLite】基础操作
  • 【快速删除 node_modules 】rimraf
  • 深入理解回调函数:指针世界的终极挑战(完)
  • CSS内边距
  • ES索引备份
  • 关于建表字段是否该使用 `NOT NULL` 的问题,你怎么看?
  • ubuntu命令行连接wifi
  • Hive数仓操作(十二)
  • C++ 语言特性13 - 强枚举类型
  • IP 数据包分包组包
  • mit6824-01-MapReduce详解
  • 解决 TypeError: Expected state_dict to be dict-like, got <class ‘*‘>.
  • 在 Ubuntu 下通过 Docker 部署 NAS 服务器
  • 损失函数篇 | YOLOv5 引入Unified-IoU 高质量目标检测IoU损失