HarmonyOS 鸿蒙Next 解决当前布局的写法

发布于 1周前 作者 zlyuanteng 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 解决当前布局的写法

布局问题,要实现展示图中把3个文字显示于同一行,但是后面2个还需要可以单独点击,还有什么系统可用布局,或者是否有开源的三放UI可以完成,目前我用系统正常UI组合,没办法达到我想要的效果,使用row,一行后面会超出,使用flex布局,显示不下就自动换行了,我需要能显示多少显示多少,显示不完才自动换行,希望帮忙提供下解决的思路

2 回复

可以试下Text组件中使用Span子组件,如:

[@Entry](/user/Entry)

[@Component](/user/Component)

struct TextDemo{

  build() {

    Row(){

      Checkbox()

        .width('14vp')

        .height('14vp')

        .select(false)

        .selectedColor(0x39a2db)

        .shape(CheckBoxShape.ROUNDED_SQUARE)

        .onChange(() => {})

      Flex({wrap:FlexWrap.Wrap}){

        Text(){

          Span('我已阅读并同意')

            .fontSize('14fp')

          Span('《上海野生动物园用户协议》')

            .fontSize('14fp')

            .onClick(() => {

              console.log('上海野生动物园用户协议')

            })

          Span('《用户隐私协议》')

            .fontSize('14fp')

            .onClick(() => {

              console.log('《用户隐私协议》')

            })

        }

      }

    }

    .margin({

      top: '40vp',

      bottom: '12vp',

      left: '14vp',

      right: '14vp',

    })

  }

}

更多关于HarmonyOS 鸿蒙Next 解决当前布局的写法的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS 鸿蒙Next中,解决当前布局的写法通常涉及XML布局文件的配置。以下是一个基本的示例,展示如何在HarmonyOS中使用XML定义布局:

<?xml version="1.0" encoding="utf-8"?>
<DirectionalLayout
    xmlns:ohos="http://schemas.huawei.com/res/ohos"
    ohos:width="match_parent"
    ohos:height="match_parent"
    ohos:orientation="vertical">

    <Text
        ohos:id="$+id:text1"
        ohos:width="match_content"
        ohos:height="match_content"
        ohos:text="Hello, HarmonyOS!"
        ohos:text_size="18fp"
        ohos:margin="16vp"/>

    <Button
        ohos:id="$+id:button1"
        ohos:width="match_content"
        ohos:height="match_content"
        ohos:text="Click Me"
        ohos:margin="16vp"/>

</DirectionalLayout>

在这个示例中,我们使用了DirectionalLayout作为根布局容器,它支持垂直(vertical)或水平(horizontal)方向的子视图排列。我们添加了一个Text视图和一个Button按钮,并设置了它们的基本属性如ID、宽度、高度、文本内容、文本大小和外边距。

如果你希望动态地改变布局,可以在JavaScript或ETS(Enhanced TypeScript)中通过API操作UI组件。但基于你的要求,这里仅展示XML布局文件的静态写法。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部