
五、组件的多层布局 原创
1.定位
作用: 改变组件的位置
分类: 绝地定位 和 相对定位
1.1绝对定位属性-position({})
作用: 控制组件位置, 可实现层叠效果
特点:
- 1.参照父组件的左上角进行偏移
- 2.绝对定位后的组件,不在占用自身的原有位置
语法: .position({ 接收的是一个对象 })
参数 { x:50,y:50 } 或 {x:50%,y:50%}, 都是参照父组件
.zIndex层级(数字),取值为整数, 数值约到层级越高
1.2相对定位-offset({})
作用: 移动组件
特点:
- 相对自身左上角进行偏移
- 相对定位后组件奶然占据自身原有位置
语法: .offset({ 接收的是一个对象 })
参数: { x:50,y:50 } , 参照自身位置移动50px 或
{x:50%,y:50%}, 参照自身位置, 移动的大小为父组件的百分之多少
绝对定位不嫩一次相对定位组合使用, 绝对定位但可以与 translate({})平移组合使用
1.3 Z序控制
作用: 定位后的组件, 默认后定义的组件在最上面显示, 可以通过zIndex属性调整显示层级
属性: zIndex(数字)
特点: 取值为整数, 取值越大, 显示层级越高
没设置zIndex()的组件默认为0
2.**Stack-**层叠布局
绝对定位属性-.position({})更适合某一个组件实现层叠
层叠布局组件-Stack({}){}更适合对一组组件实现层叠
2.1基本使用
Stack组件是可实现内部各种子元素堆叠效果的容器组件, 默认是居中对齐.
场景: 卡片层叠效果等
Stack()层叠布局的由于层叠特性所以每个子组件都可以扩大到父组件能扩大到最大的空间
层叠布局组件:Stack(){}
2.2堆叠的对齐方式
参数: alignContent
取值: 枚举 Alignment.
3.Badge-角标组件
3.1.Badge-角标组件的基本用法
注意: Badge 角标组件的效果 , 可以由绝对定位 position 实现 , 但不省力
4.通用属性
4.1组件的多态样式-stateStyles()
属性:stateStyles()
组件的多态(多态: 就是多种状态)支持宽,高,背景色, 字体大小和颜色不支持
参数 | 描述 |
normal (默认状态) | 组件无状态时的样式(默认状态) |
pressed | 组件按下状态的样式 |
disabled | 组件禁用状态的样式 |
focused | 组件获焦状态的样式 |
clicked | 组件点击状态的样式 |
4.2动画animation
组件的某些通用属性变化时, 可以通过属性动画实现渐变
属性: animation({ })
参数 | 描述 |
duration | 设置动画时长。 默认值:1000 单位:毫秒 |
curve | 设置动画曲线 默认值: |
delay | 设置动画延迟执行的时长。 默认值:0,不延迟播放。 单位:毫秒 |
iterations | 设置播放次数。 默认值:1 设置为-1时表示无限次播放。设置为0时表示无动画效果。 |
4.3图形变换
用于对组件惊醒平移, 旋转, 缩放, 矩阵变换等操作
4.3.1平移
作用: 使组件在以组件左上角为坐标原点的进行移动, translate的百分数参照自身移动
属性: translate()
参数: {x?: X轴移动距离, y?: Y轴移动距离, z?: Z轴移动距离}
4.3.2缩放
作用:分别设置X轴、Y轴、Z轴的缩放比例,默认值为1
属性:<font style="color:rgba(0, 0, 0, 0.9);">scale()</font>
,
参数: {x?: X轴缩放比例, y?: Y轴缩放比例, z?: Z轴缩放比例, centerX?: X轴中心点坐标, centerY? Y轴中心点坐标}
4.3.3旋转
作用:可使组件在以组件左上角为坐标原点的坐标系中进行旋转
属性:rotate()
参数:{angle: 旋转角度, centerX?: Y轴中心点坐标, centerY? Y轴中心点坐标}
