Skip to content

加载框Loading

一、效果总览

二、描述

页面中间的加载框,可以配置显示的文字。

三、构造函数及参数说明

text
// 以组件形式调用
OmniPageLoading({
    options?: LoadingOptions
})

// 以弹窗形式调用
let loading = new OmniLoading(this.getUIContext())
// 打开加载框
loading.show()
// 关闭加载框
loading.dismiss()
参数名类型必填说明
uiContextUIContext需要的UI上下文。
optionsLoadingOptionsloading组件/框的配置参数

LoadingOptions

参数名类型必填说明
contentstring文本内容,默认值:'加载中...'
themeLoadingTheme加载框的主题样式

LoadingTheme

参数名类型必填说明
fontSizenumber | string | Resource文本的字体大小,默认值:15
fontColorResourceColor文本的字体颜色,默认值Color.White
fontWeightFontWeight文本的字重,默认值:FontWeight.Medium
backgroundColorResourceColor加载框的背景颜色,默认值:0xffff552e
borderRadiusDimension | BorderRadiuses加载框的边框圆角大小,默认值:6

四、代码演示

示例一:默认效果

text
@Entry
@Component
struct LoadingExample {
  build() {
    NavDestination() {
      Column({ space: 10 }) {
        Text('正常Loading展示')
        OmniPageLoading()
      }
      .alignItems(HorizontalAlign.Center)
      .width('100%')
    }
    .title('Loading示例')
  }
}

示例二:自定义文字

text
@Entry
@Component
struct LoadingExample {
  build() {
    NavDestination() {
      Column({ space: 10 }) {
        Text('短文案Loading展示')
        OmniPageLoading({ options: { content: '我是较短的的Loading' } })
      }
      .alignItems(HorizontalAlign.Center)
        .width('100%')
    }
    .title('Loading示例')
  }
}

示例三:四色圆点Loading

text
@Entry
@Component
struct LoadingExample {
  @State loading: boolean = true;
  
  build() {
    NavDestination() {
      Column({ space: 10 }) {
        Text('四色圆点Loading展示')
        OmniDotLoadingView({ loading: $loading })
      }
      .alignItems(HorizontalAlign.Center)
        .width('100%')
    }
    .title('Loading示例')
  }
}