HarmonyOS Next快速入门:Button组件

简介: 本教程摘自《HarmonyOS Next快速入门》,聚焦HarmonyOS应用开发中的Button组件。Button支持胶囊、圆形和普通三种类型,可通过子组件实现复杂功能,如嵌入图片或文字。支持自定义样式(边框弧度、文本样式、背景色等)及点击事件处理。示例代码展示了不同类型按钮的创建与交互逻辑,助开发者快速上手。适合HarmonyOS初学者及对UI组件感兴趣的开发者学习。

HarmonyOS Next快速入门##HarmonyOS应用开发##教育

点击跳转《HarmonyOS Next快速入门》视频教程

Button是按钮组件,通常用于响应用户的点击操作,其类型包括胶囊按钮、圆形按钮、普通按钮。Button做为容器使用时可以通过添加子组件实现包含文字、图片等元素的按钮。

Button组件可以包含子组件。

Button(label?: ResourceStr, options?: {
    type?: ButtonType, stateEffect?: boolean })

label:按钮显示的文字内容
type:定义按钮样式
stateEffect:设置按钮按下时是否开启切换效果,默认值为true开启。

ButtonType枚举类型:

  • ButtonType.Capsule:胶囊型按钮(圆角为高度的一半),默认值。此类型按钮的圆角自动设置为高度的一半,不支持通过borderRadius属性重新设置圆角。
  • ButtonType.Circle:圆形按钮。此类型按钮为圆形,不支持通过borderRadius属性重新设置圆角。
  • ButtonType.Normal:正常按钮。此类型的按钮默认圆角为0,支持通过borderRadius属性重新设置圆角。

stateEffect:
按钮按下时是否开启按压态显示效果,当设置为false时,按压效果关闭。

  • 默认值:true
  • 说明:当开启按压态显示效果,开发者设置状态样式时,会基于状态样式设置完成后的背景色再进行颜色叠加。

自定义样式

  • 设置边框弧度。使用通用属性来自定义按钮样式。例如通过borderRadius属性设置按钮的边框弧度。
  • 设置文本样式。通过添加文本样式设置按钮文本的展示样式。
  • 设置背景颜色。添加backgroundColor属性设置按钮的背景颜色。

包含子组件

      Button({
    type: ButtonType.Circle }) {
   
        Image($r('app.media.add'))
          .fillColor(Color.White)
          .width(30)
          .height(30)
      }
      .width(50)
      .height(50)

设置按钮点击事件

  .onClick(() => {
   
    // 处理点击事件逻辑
    this.message+="+";
  })

代码实例:ButtonPage

@Entry
@Component
struct ButtonPage {
   
  @State message: string = '第4节 Button组件';

  build() {
   
    Column({
   space:6}) {
   
      Text(this.message)
        .fontSize(30)
        .fontWeight(FontWeight.Bold)
      Button("默认胶囊按钮")
      Button('设置为Normal的按钮',{
   type:ButtonType.Normal})
      Button('圆形按钮',{
   type:ButtonType.Circle}).width(100)

      Button({
   type:ButtonType.Circle}){
   
        Image($r('app.media.add')).fillColor(Color.White).width(30).height(30)
      }.width(50).height(50)
      .onClick(()=>{
   
        //点击事件业务逻辑
        this.message+="+";
      })
    }
    .height('100%')
    .width('100%')
  }
}
目录
相关文章
|
1月前
|
监控 JavaScript 编译器
从“天书”到源码:HarmonyOS NEXT 崩溃堆栈解析实战指南
本文详解如何利用 hiAppEvent 监控并获取 sourcemap、debug so 等核心产物,剖析了 hstack 工具如何将混淆的 Native 与 ArkTS 堆栈还原为源码,助力开发者掌握异常分析方法,提升应用稳定性。
367 38
|
2月前
|
开发者 容器
鸿蒙应用开发从入门到实战(十四):ArkUI组件Column&Row&线性布局
ArkUI提供了丰富的系统组件,用于制作鸿蒙原生应用APP的UI,本文主要讲解Column和Row组件的使用以及线性布局的方法。
271 12
|
2月前
|
API 数据处理
鸿蒙应用开发从入门到实战(十三):ArkUI组件Slider&Progress
ArkUI提供了丰富的系统组件,用于制作鸿蒙原生应用APP的UI,本文主要讲解滑块Slider和进度条Progress组件的使用。
162 1
|
2月前
|
数据安全/隐私保护 开发者
鸿蒙应用开发从入门到实战(十一):ArkUI组件Text&TextInput
ArkUI提供了丰富的系统组件,用于制作鸿蒙原生应用APP的UI,本文主要讲解文本组件Text和TextInput的使用。
266 3
|
2月前
|
API 数据处理
鸿蒙应用开发从入门到实战(十三):ArkUI组件Slider&Progress
ArkUI提供滑块Slider与进度条Progress组件,用于鸿蒙原生APP开发。Slider支持拖动调节音量、亮度等,可设步长、方向及提示气泡;Progress支持线性、环形等多种样式,可自定义颜色、宽度与刻度,实时显示任务进度。
225 2
|
2月前
|
开发者
鸿蒙应用开发从入门到实战(十二):ArkUI组件Button&Toggle
ArkUI提供了丰富的系统组件,用于制作鸿蒙原生应用APP的UI,本文主要讲解按钮组件Button和Toggle的使用。
287 2
|
2月前
|
JavaScript
鸿蒙应用开发从入门到实战(八):ArkTS自定义组件语法
ArkUI除系统预置的组件外,还支持自定义组件。使用自定义组件,可使代码的结构更加清晰,并且能提高代码的复用性。
177 7
|
2月前
|
存储 编解码 JSON
鸿蒙应用开发从入门到实战(十):ArkUI图片组件Image
ArkUI提供了丰富的系统组件,用于制作鸿蒙原生应用APP的UI,本文主要讲解Image图片组件的使用。
236 1
|
2月前
|
传感器 监控 安全
HarmonyOS NEXT 5.0 的星闪(NearLink)开发应用案例
V哥分享HarmonyOS NEXT 5.0星闪开发实战,涵盖智能车钥匙无感解锁与工业传感器监控。低延迟、高可靠,代码完整,速来学习!
476 0
|
1月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
235 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡

热门文章

最新文章