ArkUI Row/Column组件

 HarmonyOS开发 页面的排版主要是通过Row/Column组件来实现

Row(行)、Column(列) ,每个组件之间的间隙叫做间距(space),默认column方向(垂直)为主轴方向。跟他垂直的轴叫交叉轴,默认为Row方向。

 

属性 

1.justifyContent 设置子元素在主轴方向的对齐格式。 

参数(FlexAlign枚举)

2.alignItems 设置子元素在交叉轴方向的对齐格式。  

参数:Column容器使用HorizontailAlign枚举,Row容器使用verticalAlign枚举。  

column实现水平居中 

@Entry
@Component
struct Index {
  @State message: string = 'Hello World'
  @State imageWidth: number = 300
  build() {
    Row() {
      Column({space:20}) {
        Text('item1')
          .fontSize(30)
        Text('item1')
          .fontSize(30)
        Text('item1')
          .fontSize(30)
        Text('item1')
          .fontSize(30)
      }
      .width('100%')
      .height('100%')
      .justifyContent(FlexAlign.Center)
      .alignItems(HorizontalAlign.Center)
    }
    .height('100%')
  }
}

FlexAlign(主轴)属性

start:聚集在方向最上面

center:居中对齐

end:聚集在最下面

SpaceBetween:主轴空间分配到每个元素之间

SpaceAround:首尾元素也分配空间,但是只有中间元素空间的一半

SpaceEvently:每个元素都平均的分配空间。

Row容器也是一样的,只不过变成横向的

alignItems(交叉轴)属性

使用交叉轴属性时候,Column容器使用HorizontailAlign枚举,Row容器使用verticalAlign枚举。

 实现页面布局

使用布局手段来实现一个简单页面的排版

@Entry
@Component
struct Index {
  @State message: string = 'Hello World'
  @State imageWidth: number = 300
  build() {
    Column(){

      //图片行
      Row(){
        Image($r("app.media.hongmeng"))
          .width(this.imageWidth)
      }
      .width('100%')
      .height(400)
      .justifyContent(FlexAlign.Center)

      // 输入框行
      Row(){
        Text($r('app.string.width_label'))
          .fontSize(20)
          .fontWeight(FontWeight.Bold)
        TextInput({text:this.imageWidth.toFixed(0)})
          .width(150)
          .backgroundColor("#fff")
          .type(InputType.Number)
          .onChange(value =>{
            this.imageWidth = Number(value)
          })
      }
      .width('100%')
      .padding({left:20,right:20})
      .justifyContent(FlexAlign.SpaceBetween)

      // 分割线
      Divider()
        .width('90%')

      //按钮行
      Row(){
        Button("缩小")
          .type(ButtonType.Capsule)
          .width(100)
          .height(50)
          .fontSize(20)
          .margin(10)
          .onClick(()=>{
            if(this.imageWidth >= 30){
              this.imageWidth -= 30
            }
          })
        Button("放大")
          .type(ButtonType.Capsule)
          .width(100)
          .height(50)
          .fontSize(20)
          .onClick(()=>{
            if(this.imageWidth <= 300){
              this.imageWidth += 30
            }
          })
      }
      .width('100%')
      .justifyContent(FlexAlign.SpaceEvenly)
      .margin({top:35,bottom:35})
      // 滑块
      Slider({
        min:100,
        max:300,
        value:this.imageWidth,
        step:10
      })
        .width('100%')
        .blockColor("#ff0000")
        .trackThickness(5)
        .showTips(true)
        .onChange(value =>{
          this.imageWidth = value
        })
    }
    .width('100%')
    .height('100%')
  }
}

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
引用\[1\]和\[2\]提到了单列内存和双列内存之间的区别,但没有提到DDR4的rowcolumn。引用\[3\]提到了内存控制器和通道的概念,但没有具体涉及DDR4的rowcolumn。 DDR4是一种内存标准,它使用了行(row)和列(column)的地址来访问内存中的数据。行和列是内存中存储单元的组织方式。行是内存中的一组存储单元,而列是行中的一个存储单元。通过指定行和列的地址,CPU可以读取或写入特定的内存单元。 DDR4内存的行和列的数量是由内存控制器和内存模块的设计决定的。不同的内存控制器和内存模块可能具有不同的行和列的数量。这些参数通常在内存模块的规格书中可以找到。 总结起来,DDR4内存使用行和列的地址来访问内存中的数据,但具体的行和列的数量取决于内存控制器和内存模块的设计。 #### 引用[.reference_title] - *1* *3* [DDR的Controller、Channel、Chip、Rank、Bank、RowColumn、Sided](https://blog.csdn.net/muaxi8/article/details/124590174)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [DDR的Controller、Channel、Chip、Rank、Bank、RowColumn、Sided、Dimm](https://blog.csdn.net/u013372900/article/details/121155029)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Web阿成

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值