作者:韩茹
公司:程序咖(北京)科技有限公司
鸿蒙巴士专栏作家
AdaptiveBoxLayout是自适应盒子布局,该布局提供了在不同屏幕尺寸设备上的自适应布局能力,主要用于相同级别的多个组件需要在不同屏幕尺寸设备上自动调整列数的场景。

AdaptiveBoxLayout布局常用方法如下。
| 方法 | 功能 |
|---|---|
| addAdaptiveRule(int minWidth, int maxWidth, int columns) | 添加一个自适应盒子布局规则。 |
| removeAdaptiveRule(int minWidth, int maxWidth, int columns) | 移除一个自适应盒子布局规则。 |
| clearAdaptiveRules() | 移除所有自适应盒子布局规则。 |
在AdaptiveBoxLayout中添加和删除自适应盒子布局规则的效果对比如下。
xml布局文件:
这里最外层我们选择定向布局DirectionalLayout,垂直方向。然后里面放一个自适应盒子布局AdaptiveBoxLayout,在里面放置一些Text文本框。最下面放置两个按钮,用于添加自适应规则和移除自适应规则。
初始布局如下:
如果想添加或者删除规则,我们需要实现按钮的点击事件,所以在对应的Java代码中,添加按钮的监听。
打开MainAbilitySlice.java文件:
AdaptiveBoxLayout,自适应盒子布局。其中放置了许多宽度相同但高度不同的盒子。 一行的高度由最高的盒子决定。
点击addAdaptiveRule(100, 2000, 3)按钮,添加一个横向上为3列的自适应规则,效果如下:
点击效果:
更多内容:
1、社区:鸿蒙巴士https://www.harmonybus.net/
2、公众号:HarmonyBus
3、技术交流QQ群:714518656
4、视频课:https://www.chengxuka.com
原文作者:韩茹_;如有侵权,请联系管理员删除。