【HarmonyOS NEXT星河版开发学习】小型测试案例04-个人中心顶部导航

个人主页→VON

收录专栏→鸿蒙开发小型案例总结​​​​​

基础语法部分会发布于github 和 gitee上面(暂未发布)

前言

主轴对齐方式在鸿蒙开发中非常重要,通过合理选择 justifyContentalignItems 属性,开发者可以精确控制 FlexLayout 或其他布局容器中子元素的排列和对齐方式,以实现灵活、美观且适应性强的用户界面设计。

知识点概述

在鸿蒙(HarmonyOS)开发中,主轴对齐方式通常用于指定在 FlexLayout 或者类似的布局容器中,子元素沿着主轴(FlexLayout 中的行或列)的对齐方式。这些对齐方式可以帮助开发者精确控制子元素在布局容器中的位置和排列方式,以实现更灵活和美观的界面设计。

主轴对齐方式的常见选项:

justifyContent(水平主轴对齐)

html 复制代码
FlexLayout {
    flexDirection: 'row',
    width: 'match_parent',
    height: 'match_parent',
    justifyContent: 'center',
    content: [
        // 子元素
    ]
}
  • justifyContent 属性用于控制子元素在 FlexLayout 主轴方向上的对齐方式。
  • 常见取值:
    • flex-start:子元素向主轴起始位置对齐。
    • flex-end:子元素向主轴末尾位置对齐。
    • center:子元素在主轴上居中对齐。
    • space-between:子元素在主轴上平均分布,首尾没有空隙。
    • space-around:子元素在主轴上平均分布,首尾有空隙。
    • space-evenly:子元素在主轴上平均分布,包括首尾和子元素之间的空隙都相等。

alignItems(垂直主轴对齐)

html 复制代码
FlexLayout {
    flexDirection: 'row',
    width: 'match_parent',
    height: 'match_parent',
    justifyContent: 'center',
    content: [
        // 子元素
    ]
}
  • alignItems 属性用于控制子元素在 FlexLayout 交叉轴(与主轴垂直的方向)上的对齐方式。
  • 常见取值:
    • flex-start:子元素向交叉轴起始位置对齐。
    • flex-end:子元素向交叉轴末尾位置对齐。
    • center:子元素在交叉轴上居中对齐。
    • stretch:默认值,子元素沿着交叉轴拉伸。
    • baseline:子元素以基线对齐。

界面效果展示

代码展示

html 复制代码
@Entry
@Component
struct Index {
  build() {
    Column(){
      Row(){
        Image($r('app.media.ic_public_arrow_left'))
          .width(30)
        Text('个人中心')
        Image($r('app.media.ic_gallery_photoedit_more'))
          .width(30)
      }
      .justifyContent(FlexAlign.SpaceBetween)
      .width('100%')
      .height(40)
      .backgroundColor(Color.White)
      .padding({
        left:10,
        right:10
      })
    }
    .width('100%')
    .height('100%')
    .backgroundColor('#ccc')
  }
}
相关推荐
ONEDAY8 小时前
HarmonyOS 深色模式适配实践:从资源、WebView 到网络图统一处理
harmonyos
鸿蒙开发1 天前
鸿蒙(HarmonyOS NEXT)表单校验别再手撸正则了 —— 我写了个 ArkTS 版 zod
harmonyos
TrisighT1 天前
ArkTS 的 @BuilderParam 你八成只用了皮毛——那个尾随闭包写法差点被我当 bug 删了
harmonyos·arkts·arkui
ONEDAY2 天前
HarmonyOS 多 Product 构建实践:一套代码生成多个产物
harmonyos
TT_Close2 天前
别劝退了!5秒搞定 Flutter 鸿蒙 FVM 起跑线
flutter·harmonyos·visual studio code
TrisighT2 天前
ArkTS 列表滚动时为什么会闪现旧数据?我扒了 LazyForEach 的复用逻辑
harmonyos·arkts·arkui
MonkeyKing2 天前
鸿蒙ArkTS深度剖析:ArkTS与TS/JS核心差异、静态强类型实战优势
typescript·harmonyos
TrisighT2 天前
Electron鸿蒙PC上写日志文件,我被权限和路径坑了两次
electron·harmonyos
TrisighT3 天前
一个下午搞定 ArkTS 折叠面板?结果我从两点写到晚上九点
harmonyos·arkts·arkui
花椒技术6 天前
HJPusher / HJPlayer SDK 实践:我们为什么把直播推播链路拆成一套可复用能力
设计模式·harmonyos·直播