HarmonyOS Java UI之DependentLayout布局示例

DependentLayout简介
DependentLayout意为相对位置布局,与DirectionalLayout相比较有更多的排布方式,每个组件可以指定相对于其他同级组件的位置,也可以指定相对于父组件的位置。可以使用DependentLayout布局来实现更加复杂的UI界面,同时也可以和其他布局相结合组合出需要的UI界面。
常用属性

<?xml version="1.0" encoding="utf-8"?>
<DependentLayout
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:height="match_parent"
ohos:width="match_parent"
ohos:alignment="center">
<Text
ohos:id="$+id:text_01"
ohos:height="match_content"
ohos:width="match_content"
ohos:background_element="$graphic:background_dependent_layout"
ohos:text="我是第一个Text."
ohos:text_size="50"
/>
<Text
ohos:id="$+id:text_02"
ohos:height="match_content"
ohos:width="match_content"
ohos:background_element="$graphic:background_dependent_layout"
ohos:text="我是第二个Text."
ohos:text_size="50"
ohos:above="$id:text_01"
/>
</DependentLayout>

将ohos:above="$id:text_01" 改为ohos:below="$id:text_01",效果如下。

将ohos:above="$id:text_01" 改为ohos:left_of="$id:text_01",效果如下,其他自行验证。


<?xml version="1.0" encoding="utf-8"?>
<DependentLayout
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:height="match_parent"
ohos:width="match_parent"
ohos:alignment="center">
<Text
ohos:id="$+id:text_01"
ohos:height="match_content"
ohos:width="match_content"
ohos:background_element="$graphic:background_dependent_layout"
ohos:text="我是第一个Text."
ohos:text_size="50"
ohos:align_parent_bottom="true"
/>
<Text
ohos:id="$+id:text_02"
ohos:height="match_content"
ohos:width="match_content"
ohos:background_element="$graphic:background_dependent_layout"
ohos:text="我是第二个Text."
ohos:text_size="50"
ohos:align_parent_top="true"
/>
<Text
ohos:id="$+id:text_03"
ohos:height="match_content"
ohos:width="match_content"
ohos:background_element="$graphic:background_dependent_layout"
ohos:text="我是第三个Text."
ohos:text_size="50"
ohos:align_parent_right="true"
/>
<Text
ohos:id="$+id:text_04"
ohos:height="match_content"
ohos:width="match_content"
ohos:background_element="$graphic:background_dependent_layout"
ohos:text="我是第四个Text."
ohos:text_size="50"
ohos:center_in_parent="true"
/>
</DependentLayout>

示例
<?xml version="1.0" encoding="utf-8"?>
<DependentLayout
xmlns:ohos="http://schemas.huawei.com/res/ohos"
ohos:height="match_parent"
ohos:width="match_parent">
<Text
ohos:id="$+id:text_01"
ohos:height="70vp"
ohos:width="match_parent"
ohos:background_element="#CCCCCC"
ohos:text="Header"
ohos:text_alignment="center"
ohos:text_size="50"
ohos:align_parent_top="true"
/>
<Text
ohos:id="$+id:text_02"
ohos:height="match_parent"
ohos:width="100vp"
ohos:background_element="#5C6E71"
ohos:text="LEFT"
ohos:text_alignment="center"
ohos:text_size="50"
ohos:align_parent_left="true"
ohos:below="$id:text_01"
/>
<Text
ohos:id="$+id:text_03"
ohos:height="match_parent"
ohos:width="100vp"
ohos:background_element="#5C6E71"
ohos:text="Right"
ohos:text_alignment="center"
ohos:text_size="50"
ohos:align_parent_right="true"
ohos:below="$id:text_01"
/>
<Text
ohos:id="$+id:text_05"
ohos:height="match_parent"
ohos:width="match_parent"
ohos:background_element="#16CCB7"
ohos:text_alignment="center"
ohos:text="Center"
ohos:text_size="50"
ohos:right_margin="100vp"
ohos:below="$id:text_01"
ohos:right_of="$id:text_02"
/>
<Text
ohos:id="$+id:text_04"
ohos:height="50vp"
ohos:width="match_parent"
ohos:background_element="#CCCCCC"
ohos:text="Footer"
ohos:text_size="50"
ohos:align_parent_bottom="true"
/>
</DependentLayout>

至此,我们已经了解并会使用HarmonyOS Java UI的六大布局,下一节我们将对六大布局进行总结,并将前面没有提到的各类属性做详细的归纳。
作者:IT明
想了解更多内容,请访问:
51CTO和华为官方战略合作共建的鸿蒙技术社区
https://harmonyos.51cto.com#bky
HarmonyOS Java UI之DependentLayout布局示例的更多相关文章
- HarmonyOS Java UI之StackLayout布局示例
StackLayout简介 StackLayout意为堆叠布局,用于在屏幕上保留一个区域来显示组件,实现特殊的功能.通常,堆叠布局中只应该放置一个子组件,如果存在多个子组件,则显示最新的组件.这个布局 ...
- HarmonyOS Java UI之DirectionalLayout布局
在之前的章节中我使用的是Java 代码构建UI界面,从本节开始,将使用XML构建UI界面. 使用XML构建UI(默认你已经会在项目中创建XML布局文件)界面相对Java代码构建的好处是:结构清晰,代码 ...
- Android开发1:基本UI界面设计——布局和组件
前言 啦啦啦~本学期要开始学习Android开发啦~ 博主在开始学习前是完完全全的小白,只有在平时完成老师要求的实验的过程中一步一步学习~从此篇博文起,博主将开始发布Android开发有关的博文,希望 ...
- HDC技术分论坛:HarmonyOS新一代UI框架的全面解读
作者:yuzhiqiang,UI编程框架首席技术专家 在Harmony 3.0.0开发者预览版中,包含了新一代的声明式UI框架ArkUI 3.0.多语言跨平台编译器ArkCompiler 3.0.跨端 ...
- 【详细】Android入门到放弃篇-YES OR NO-》各种UI组件,布局管理器,单元Activity
问:达叔,你放弃了吗? 答:不,放弃是不可能的,丢了Android,你会心疼吗?如果别人把你丢掉,你是痛苦呢?还是痛苦呢?~ 引导语 有人说,爱上一个人是痛苦的,有人说,喜欢一个人是幸福的. 人与人之 ...
- amazeui学习笔记一(开始使用2)--布局示例layouts
amazeui学习笔记一(开始使用2)--布局示例layouts 一.总结 1.样例分析(不要忘记,优先分析这个布局示例):有教你页面怎么布局的,实例中可以分析一波 2.响应式:对应meta标签中的v ...
- [前端]使用JQuery UI Layout Plug-in布局 - wolfy
引言 使用JQuery UI Layout Plug-in布局框架实现快速布局,用起来还是挺方便的,稍微研究了一下,就能上手,关于该布局框架的材料,网上也挺多的.在项目中也使用到了,不过那是前端的工作 ...
- Android中Java反射技术的使用示例
import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Metho ...
- Java正则表达式的语法与示例
Java正则表达式的语法与示例 java 正则表达式 正则表达式语法 java正则表达式语法 java正则表达式 概要: Java正则表达式的语法与示例 | |目录 1匹配验证-验证Email是否正确 ...
随机推荐
- java实现单链表、栈、队列三种数据结构
一.单链表 1.在我们数据结构中,单链表非常重要.它里面的数据元素是以结点为单位,每个结点是由数据元素的数据和下一个结点的地址组成,在java集合框架里面 LinkedList.HashMap(数组加 ...
- python打印水仙花数的个人总结
面试过程中,提到python,面试最多的就是让你现场写代码实现水仙花.冒泡.九九乘法表,这些面试方法旨在校验面试者的python基础和思维逻辑. 先从水仙花说起,水仙花是指一个n位正整数(n>= ...
- python机器学习实现K-近邻算法(KNN)
机器学习 K-近邻算法(KNN) 关注公众号"轻松学编程"了解更多. 以下命令都是在浏览器中输入. cmd命令窗口输入:jupyter notebook 后打开浏览器输入网址htt ...
- Servlet学习笔记(三)
目录 Servlet学习笔记(三) 一.HTTP协议 1.请求:客户端发送欸服务器端的数据 2.响应:服务器端发送给客户端的数据 3.响应状态码 二.Response对象 1.Response设置响应 ...
- fflush(stdin)和fflush(stdout)
转自:http://blog.csdn.net/yeyuangen/article/details/6743416 fflush(stdin)即清理标准输入流,把多余的仍未被保存的数据丢掉. fflu ...
- leetcode 98:n-queens-ii
题目描述 继续思考"n-queens"问题 这次我们不是输出皇后的排列情况,而是输出n皇后问题一共有多少种解法 Follow up for N-Queens problem. No ...
- Java线程状态及切换
Java线程状态及切换 一.什么是Java线程状态 在Java程序中,用于描述Java线程的六种状态: 新建(NEW):当前线程,刚刚新建出来,尚未启动. 运行(RUNNABLE):当前线程,处于竞争 ...
- MobaXterm 连接 VirtualBox 6 虚拟机中的 CentOS 7
1 运行环境 本机系统:Windows 7 虚拟机软件:Oracle VM VirtualBox 6 虚拟机系统:CentOS 7 MobaXterm(安装在本机上) 2 MobaXterm - 远端 ...
- GitLab集成Jenkins、Harborn构建pipeline流水线任务
一.计划 在jenkins中构建流水线任务时,从GitLab当中拉取代码,通过maven打包,然后构建dokcer镜像,并将镜像推送至harbor当中.Jenkins中含开发.测试.生产视图,开发人员 ...
- ixgbe 驱动 为xxx驱动做准备1
网卡都是pci设备,因此这里每个网卡驱动其实就是一个pci驱动.并且intel这里是把好几个万兆网卡(82599/82598/x540)的驱动做在一起的.V4L2 一样几个类型摄像头合并在一起 先说一 ...