【鸿蒙软件开发】ArkTS容器组件之Badge

这篇具有很好参考价值的文章主要介绍了【鸿蒙软件开发】ArkTS容器组件之Badge。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

Badge组件:可以附加在单个组件上用于信息标记的容器组件。


一、Badge组件

可以附加在单个组件上用于信息标记的容器组件。

说明
该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

1.1 子组件

支持单个子组件。

说明
子组件类型:系统组件和自定义组件,支持渲染控制类型(if/else、ForEach和LazyForEach)。

1.2 接口

接口1

接口
方法1: Badge(value: {count: number, position?: BadgePosition, maxCount?: number, style: BadgeStyle})

创建数字标记组件。

从API version 9开始,该接口支持在ArkTS卡片中使用。

参数

count
参数类型:
number
必填:

默认值:
参数描述:
设置提醒消息数。
说明:
小于等于0时不显示信息标记。
取值范围:[-2147483648,2147483647],非整数时会舍去小数部分取整数部分,如5.5取5。
参数名:

position
参数类型:
BadgePosition
必填:

默认值:
BadgePosition.RightTop
参数描述:
设置提示点显示位置。
参数名:

maxCount
参数类型:
number
必填:

默认值:
99
参数描述:
最大消息数,超过最大消息时仅显示maxCount+。
参数名:

style
参数类型:
BadgeStyle
必填:

默认值:
参数描述:
Badge组件可设置样式,支持设置文本颜色、尺寸、圆点颜色和尺寸。

接口2

方法2: Badge(value: {value: string, position?: BadgePosition, style: BadgeStyle})

根据字符串创建标记组件。

从API version 9开始,该接口支持在ArkTS卡片中使用。

参数

参数名: value

参数类型: string
必填: 是
默认值: -
参数描述: 提示内容的文本字符串。
参数名: position

参数类型: BadgePosition
必填: 否
默认值: BadgePosition.RightTop
参数描述: 设置提示点显示位置。
参数名: style

参数类型: BadgeStyle
必填: 是
默认值: -
参数描述: Badge组件可设置样式,支持设置文本颜色、尺寸、圆点颜色和尺寸。

BadgePosition枚举说明

从API version 9开始,该接口支持在ArkTS卡片中使用。
名称: RightTop
描述: 圆点显示在右上角。

名称: Right
描述: 圆点显示在右侧纵向居中。

名称: Left
描述: 圆点显示在左侧纵向居中。

BadgeStyle对象说明

从API version 9开始,该接口支持在ArkTS卡片中使用。
名称: color

类型: ResourceColor
必填: 否
默认值: Color.White
描述: 文本颜色。

名称: fontSize
类型: number | string
必填: 否
默认值: 10
描述: 文本大小。单位:vp。说明:不支持设置百分比。

名称: badgeSize
类型: number | string
必填: 否
默认值: 16
描述: Badge的大小。不支持百分比形式设置。当设置为非法值时,按照默认值处理。单位:vp。

名称: badgeColor
类型: ResourceColor
必填: 否
默认值: Color.Red
描述: Badge的颜色。

1.3 示例代码

// xxx.ets
@Entry
@Component
struct BadgeExample {
  @Builder TabBuilder(index: number) {
    Column() {
      if (index === 2) {
        Badge({
          value: '',
          style: { badgeSize: 6, badgeColor: '#FA2A2D' }
        }) {
          Image('/common/public_icon_off.svg')
            .width(24)
            .height(24)
        }
        .width(24)
        .height(24)
        .margin({ bottom: 4 })
      } else {
        Image('/common/public_icon_off.svg')
          .width(24)
          .height(24)
          .margin({ bottom: 4 })
      }
      Text('Tab')
        .fontColor('#182431')
        .fontSize(10)
        .fontWeight(500)
        .lineHeight(14)
    }.width('100%').height('100%').justifyContent(FlexAlign.Center)
  }

  @Builder itemBuilder(value: string) {
    Row() {
      Image('common/public_icon.svg').width(32).height(32).opacity(0.6)
      Text(value)
        .width(177)
        .height(21)
        .margin({ left: 15, right: 76 })
        .textAlign(TextAlign.Start)
        .fontColor('#182431')
        .fontWeight(500)
        .fontSize(16)
        .opacity(0.9)
      Image('common/public_icon_arrow_right.svg').width(12).height(24).opacity(0.6)
    }.width('100%').padding({ left: 12, right: 12 }).height(56)
  }

  build() {
    Column() {
      Text('dotsBadge').fontSize(18).fontColor('#182431').fontWeight(500).margin(24)
      Tabs() {
        TabContent()
          .tabBar(this.TabBuilder(0))
        TabContent()
          .tabBar(this.TabBuilder(1))
        TabContent()
          .tabBar(this.TabBuilder(2))
        TabContent()
          .tabBar(this.TabBuilder(3))
      }
      .width(360)
      .height(56)
      .backgroundColor('#F1F3F5')

      Column() {
        Text('stringBadge').fontSize(18).fontColor('#182431').fontWeight(500).margin(24)
        List({ space: 12 }) {
          ListItem() {
            Text('list1').fontSize(14).fontColor('#182431').margin({ left: 12 })
          }
          .width('100%')
          .height(56)
          .backgroundColor('#FFFFFF')
          .borderRadius(24)
          .align(Alignment.Start)

          ListItem() {
            Badge({
              value: 'New',
              position: BadgePosition.Right,
              style: { badgeSize: 16, badgeColor: '#FA2A2D' }
            }) {
              Text('list2').width(27).height(19).fontSize(14).fontColor('#182431')
            }.width(49.5).height(19)
            .margin({ left: 12 })
          }
          .width('100%')
          .height(56)
          .backgroundColor('#FFFFFF')
          .borderRadius(24)
          .align(Alignment.Start)
        }.width(336)

        Text('numberBadge').fontSize(18).fontColor('#182431').fontWeight(500).margin(24)
        List() {
          ListItem() {
            this.itemBuilder('list1')
          }

          ListItem() {
            Row() {
              Image('common/public_icon.svg').width(32).height(32).opacity(0.6)
              Badge({
                count: 1,
                position: BadgePosition.Right,
                style: { badgeSize: 16, badgeColor: '#FA2A2D' }
              }) {
                Text('list2')
                  .width(177)
                  .height(21)
                  .textAlign(TextAlign.Start)
                  .fontColor('#182431')
                  .fontWeight(500)
                  .fontSize(16)
                  .opacity(0.9)
              }.width(240).height(21).margin({ left: 15, right: 11 })

              Image('common/public_icon_arrow_right.svg').width(12).height(24).opacity(0.6)
            }.width('100%').padding({ left: 12, right: 12 }).height(56)
          }

          ListItem() {
            this.itemBuilder('list3')
          }

          ListItem() {
            this.itemBuilder('list4')
          }
        }
        .width(336)
        .height(232)
        .backgroundColor('#FFFFFF')
        .borderRadius(24)
        .padding({ top: 4, bottom: 4 })
        .divider({ strokeWidth: 0.5, color: 'rgba(0,0,0,0.1)', startMargin: 60, endMargin: 12 })
      }.width('100%').backgroundColor('#F1F3F5').padding({ bottom: 12 })
    }.width('100%')
  }
}

【鸿蒙软件开发】ArkTS容器组件之Badge,鸿蒙软件开发,harmonyos,华为,鸿蒙系统,1024程序员节,鸿蒙软件开发,java,开发语言


总结

以上就是今天要讲的内容,本文介绍了Badge组件的使用,这个组件可以让用户快速得知信息数目,非常方便文章来源地址https://www.toymoban.com/news/detail-715457.html

到了这里,关于【鸿蒙软件开发】ArkTS容器组件之Badge的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Scroll)

    可滚动的容器组件,当子组件的布局尺寸超过父组件的尺寸时,内容可以滚动。 说明: 该组件从API version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 该组件嵌套List子组件滚动时,若List不设置宽高,则默认全部加载,在对性能有要求的场

    2024年04月13日
    浏览(61)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:List)

    列表包含一系列相同宽度的列表项。适合连续、多行呈现同类数据,例如图片和文本。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 该组件内容区小于一屏时,默认没有回弹效果。需要回弹效果,可以通过edgeEffe

    2024年04月13日
    浏览(86)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Flex)

    以弹性方式布局子组件的容器组件。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 Flex组件在渲染时存在二次布局过程,因此在对性能有严格要求的场景下建议使用Column、Row代替。 Flex组件主轴默认不设置时撑满父容

    2024年04月11日
    浏览(38)
  • 鸿蒙开发实战项目(六十七):常见组件和容器低代码开发示例(ArkTS)

    本文 详细代码 需订阅下面专栏获取(订阅后私信邮箱+项目名): https://blog.csdn.net/m0_68036862/category_12333038.html 目录 介绍 环境搭建 代码结构解读 创建低代码工程

    2024年02月21日
    浏览(34)
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:UIExtensionComponent (系统接口))

    UIExtensionComponent用于支持在本页面内嵌入其他应用提供的UI。展示的内容在另外一个进程中运行,本应用并不参与其中的布局和渲染。 通常用于有进程隔离诉求的模块化开发场景。 说明: 该组件从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的

    2024年04月13日
    浏览(38)
  • 【鸿蒙软件开发】UIAbility组件概况、生命周期与启动模式

    UIAbility组件是一种包含UI界面的应用组件,主要用于和用户交互。 UIAbility组件是系统调度的基本单元,为应用提供绘制界面的窗口;一个UIAbility组件中可以通过多个页面来实现一个功能模块。每一个UIAbility组件实例,都对应于一个最近任务列表中的任务。 UIAbility组件是一种包

    2024年02月05日
    浏览(43)
  • 【软件开发/设计】分布式架构中的组件(如Kafka、MongoDB和Nginx)如何进行容器化部署

    容器化部署是将应用程序及其依赖打包成一个容器镜像,然后在任何支持容器的环境中运行这个镜像的过程。在分布式架构中,像Nginx、MongoDB、Kafka这样的组件通过容器化可以更易于部署、扩展和管理。以下是这些组件容器化部署的一般步骤和原理: 容器化部署的一般步骤

    2024年02月04日
    浏览(37)
  • HarmonyOS北向开发(软件开发方向)基于ArkTS 入门学习 (1) - 开发语言及环境配置

            建议快速阅读一遍,不要求记住。知道一个大概框架即可,方便以后查阅开发文档 开发语言 - ArkTS          HarmonyOS主要的开发语言                 未来版本的HarmonyOS的主要开发语言将会是ArkTS,在Devco Studio创建项目的时候,选择API 9 开发的情况下,只能使

    2024年01月21日
    浏览(39)
  • 鸿蒙软件开发0基础入门

    今天,万众瞩目的纯血版鸿蒙星河HarmonyOS NEXT发布了,鸿蒙操作系统(HarmonyOS)作为华为开发的面向全场景分布式智能终端的操作系统,对于初学者入门开发,以下是一些基本步骤和要点: 1. 开发环境准备 安装DevEco Studio :首先需要下载并安装华为提供的集成开发环境(IDE)

    2024年01月21日
    浏览(40)
  • 【鸿蒙应用ArkTS开发系列】- Web组件使用讲解

    目录 一、Web组件介绍 二、创建组件 权限列表 三、设置样式和属性 四、添加事件和方法 五、访问本地Html 1、本地html文件创建 2、本地html文件加载 2、JS对象注入,Html使用JS对象调用客户端方法 3、客户端调用本地Html网页中的JS方法 使用鸿蒙的ArkUI框架开发鸿蒙应用的时候,官

    2024年02月07日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包