TableLayout 是什么

TableLayout  是表格布局,就是使用表格的方式划分子组件,

个人感觉应该也不是常用的布局,常用的还是选择DirectionalLayout和DependentLayout ,下面了解下它的属性

TableLayout的自有XML属性

属性名称

中文描述

取值

取值说明

使用案例

alignment_type

对齐方式

align_edges

表示TableLayout内的组件按边界对齐。

ohos:alignment_type="align_edges"

align_contents

表示TableLayout内的组件按边距对齐。

ohos:alignment_type="align_contents"

column_count

列数

integer类型

可以直接设置整型数值,也可以引用integer资源。

ohos:column_count="3"

ohos:column_count="$integer:count"

row_count

行数

integer类型

可以直接设置整型数值,也可以引用integer资源。

ohos:row_count="2"

ohos:row_count="$integer:count"

orientation

排列方向

horizontal

表示水平方向布局。

ohos:orientation="horizontal"

vertical

表示垂直方向布局。

ohos:orientation="vertical"

看完属性之后练习下

demo练习TableLayout 的使用

先吐槽一下,官方的文档 layout_alignment 这个属性前面文档都没有说,这里居然写了,后来反复实现发现没有效果,大家都别想我一样傻不拉几的试了很久,再说写的编译器也不会智能提醒的,

demo1 TableLayout 里面不添加任何属性

<?xml version="1.0" encoding="utf-8"?>
<TableLayoutxmlns:ohos="http://schemas.huawei.com/res/ohos"ohos:height="match_parent"ohos:width="match_parent"><Buttonohos:id="$+id:button1"ohos:padding="10vp"ohos:background_element="#FF1493"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button2"ohos:padding="10vp"ohos:background_element="#FF00FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button3"ohos:padding="10vp"ohos:background_element="#0000FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button4"ohos:padding="10vp"ohos:background_element="#00FFFF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/></TableLayout>

看下效果

orientation 属性

试下orientation 属性,也不知道是我理解不对还是怎么了,设置horizontal 里面的控件是垂直的,

设置vertical的时候里面控件是水平的看下面的效果图

设置horizontal的情况

设置orientation 的情况

反正大家知道有这个属性就行了(难受)

感觉里面最重要的就是column_count 和 row_count,下面看下他两的属性

demo2 设置 2行 和2列

<?xml version="1.0" encoding="utf-8"?>
<TableLayoutxmlns:ohos="http://schemas.huawei.com/res/ohos"ohos:height="match_parent"ohos:width="match_parent"ohos:row_count="2"ohos:column_count="2"><Buttonohos:id="$+id:button1"ohos:padding="10vp"ohos:background_element="#FF1493"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button2"ohos:padding="10vp"ohos:background_element="#FF00FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button3"ohos:padding="10vp"ohos:background_element="#0000FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button4"ohos:padding="10vp"ohos:background_element="#00FFFF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/></TableLayout>

效果图

demo3设置1行4列

<?xml version="1.0" encoding="utf-8"?>
<TableLayoutxmlns:ohos="http://schemas.huawei.com/res/ohos"ohos:height="match_parent"ohos:width="match_parent"ohos:row_count="1"ohos:column_count="4"><Buttonohos:id="$+id:button1"ohos:padding="10vp"ohos:background_element="#FF1493"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button2"ohos:padding="10vp"ohos:background_element="#FF00FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button3"ohos:padding="10vp"ohos:background_element="#0000FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button4"ohos:padding="10vp"ohos:background_element="#00FFFF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/></TableLayout>

效果图

最后说下column_count 和 row_count 使用的时候要注意里面的控件,如果多余你设置的行和列的话默认多余的一个在下面,比如我里面写了6个控件设置2行和2列的效果图

比如下面的

<?xml version="1.0" encoding="utf-8"?>
<TableLayoutxmlns:ohos="http://schemas.huawei.com/res/ohos"ohos:height="match_parent"ohos:width="match_parent"ohos:row_count="2"ohos:column_count="2"><Buttonohos:id="$+id:button1"ohos:padding="10vp"ohos:background_element="#FF1493"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button2"ohos:padding="10vp"ohos:background_element="#FF00FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button3"ohos:padding="10vp"ohos:background_element="#0000FF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button4"ohos:padding="10vp"ohos:background_element="#00FFFF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button5"ohos:padding="10vp"ohos:background_element="#00FFFF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/><Buttonohos:id="$+id:button6"ohos:padding="10vp"ohos:background_element="#00FFFF"ohos:height="match_content"ohos:width="match_content"ohos:layout_alignment="center"ohos:text_size="22fp"ohos:text="java"/></TableLayout>

效果图

好了就说到这里把,使用的时候注意下就行,

官方文档链接

其他的布局连接,感兴趣可以看下,

HarmonyOS UI开发 AdaptiveBoxLayout(自适应盒子布局) 的使用

HarmonyOS UI开发 PositionLayout(位置布局) 的使用

HarmonyOS UI开发 StackLayout(堆栈布局) 的使用

HarmonyOS UI开发 DependentLayout(依赖布局) 的使用

HarmonyOS UI开发 DirectionalLayout(定向布局) 的使用

HarmonyOS UI开发 TableLayout(表格布局) 的使用相关推荐

  1. HarmonyOS UI开发 PositionLayout(位置布局) 的使用

    PositionLayout 是什么 PositionLayout 是位置布局,在PositionLayout中,子组件通过指定准确的x/y坐标值在屏幕上显示.(0, 0)为左上角:当向下或向右移动时 ...

  2. HarmonyOS UI开发 DependentLayout(依赖布局) 的使用

    DependentLayout是什么 DependentLayout是依赖布局,每个组件可以指定相对于其他同级元素的位置,或者指定相对于父组件的位置.(类似Android的相对布局) Dependen ...

  3. HarmonyOS UI开发 DirectionalLayout(定向布局) 的使用

    DirectionalLayout 是什么 DirectionalLayout 是定向布局,控件水平或垂直排列(类似Android 的线性布局不过还是有区别的) DirectionalLayout的自 ...

  4. HarmonyOS UI开发 AdaptiveBoxLayout(自适应盒子布局) 的使用

    AdaptiveBoxLayout 是什么 AdaptiveBoxLayout 是自适应盒子布局,该布局提供了在不同屏幕尺寸设备上的自适应布局能力,主要用于相同级别的多个组件需要在不同屏幕尺寸设备上自 ...

  5. HarmonyOS UI开发 StackLayout(堆栈布局) 的使用

    StackLayout是什么 StackLayout 是堆栈布局,直接在屏幕上开辟出一块空白的区域,添加到这个布局中的视图都是以层叠的方式显示,而它会把这些视图默认放到这块区域的左上角,第一个添加到布 ...

  6. Android 应用开发(38)TableLayout(表格布局)

    TableLayout(表格布局) 前面我们已经学习了平时实际开发中用得较多的线性布局(LinearLayout)与相对布局(RelativeLayout), 其实学完这两个基本就够用了,笔者在实际开 ...

  7. android简单实现表格布局,Android开发中TableLayout表格布局

    Android开发中TableLayout表格布局 一.引言 在移动端应用程序开发中,常常会使用到表格布局,iOS和Android开发框架中都提供了独立的表格视图控件供开发者使用,例如iOS中的UIT ...

  8. android html 显示表格边框,tablelayout表格布局详解

    如果你已经下载好MT4软件(很多专业外汇平台都有提供下载的),在手机桌面找到图表打开,然后选择好交易商,输入账号密码就可以了. TableLayout怎样实现表格布局 表格布局的子对象不能指定 lay ...

  9. HarmonyOS UI 开发 vp ,fp , px 以及写具体数字的 理解

    HarmonyOS 开发UI 距离和字体使用什么单位 距离使用 vp (virtual pixel) 字体大小使用 fp (font pixel) 详细了解 vp ,fp , px 虚拟像素单位:vp ...

最新文章

  1. “快准顺”而不是“信达雅”
  2. 查找重复文件_重复文件查找和磁盘整理工具:Tidy Up
  3. Kendo UI常用示例汇总(十)
  4. VScode 把tab置换为空格
  5. 敏捷世界里中层经理的角色
  6. Blender相关的一些链接(持续更新)
  7. 编辑器扩展之Inspector面板可视化调整
  8. 十折交叉验证python_Python机器学习:6.2 K折交叉验证评估模型性能
  9. 郑立:一个80后神话的倒掉
  10. 小牛叔讲Python第6章:for循环-能计数的循环1234567
  11. Adobe Photoshop 2021 22.4.2 绿色精简版
  12. [脑科学]-卡耐基等成功学或者心灵鸡汤的书籍
  13. 免费开源FTP工具:Cyberduck for Mac
  14. java判定成绩等级_Java编程判断一组学生成绩等级
  15. (FortiGate)飞塔防火墙配置AD***
  16. 徒给别人做嫁衣——与人共同创业(1)
  17. mpeg2是信源还是信道编码_解析信源编码与信道编码之间的区别
  18. 程序猿之华丽转身:必备技术面试手册
  19. nyoj451光棍节的快乐
  20. 哥德尔的形式系统P——哥德尔重读拆解汉译之三

热门文章

  1. 学生上课睡觉班主任怎么处理_学生上课睡觉,老师的管与不管,不是你看到的那么简单...
  2. 算法图解/二分查找/简单查找/选择排序/递归算法/快速排序算法/
  3. TF-IDF 原理及sklearn中的tf-idf实例分析
  4. debian10 更换阿里源
  5. idea内Maven的全局配置
  6. pytorch旧版安装
  7. MindSpore后端运行类
  8. MindInsight计算图可视设计
  9. 2021年大数据Flink(六):Flink On Yarn模式
  10. 2021年大数据Spark(二十一):Spark Core案例-SogouQ日志分析