在 ConstraintLayout 约束布局中, layout_constraintDimensionRatio 表示 期望的 宽高比 ,这方面 网上资料很多,但还有 一些 隐藏的用法 网上查不到。
layout_constraintDimensionRatio 不仅可以用来 表示 宽高比, 也可以用来 表示 高宽比
正常写法下
layout_constraintDimensionRatio="3:2" 时,表示 宽:高= 3:2
特殊写法
layout_constraintDimensionRatio = “H, 3:2”,
layout_constraintDimensionRatio = “W, 3:2”,
第一个字符, 代表 后面的 3:2 这个 比数 中 分母 是指高or宽。
例如H是"高"的意思,则表示这个分数中分母是高。在3:2这个比数中 分母2 是高,那么 分子3就 宽, 则 宽:高= 3:2
例如W是"宽"的意思,则表示这个分数中分母是宽。在3:2这个比数中 分母2 是宽,那么 分子3就是 高, 则 宽:高=2:3;
结论
一、在 android:layout_width = 固定dp 或 match_parent 、android:layout_height = 0dp 的情况下,表示 宽度固定,依照比例来计算高度,规则如下:
1、不写H,也不写W的情况下, 表示 宽高比
2、写了H 和 不写H 效果是一样的,都是 表示 宽高比
3、加了 “W,” 表示 倒置 分数的意义, 表示 高宽比, 看清楚,高在前,宽在后。别看岔了
------------
二、在 android:layout_width = 0dp 、android:layout_height = 固定dp 或 match_parent 的情况下,表示 高度固定,依照比例来计算宽度,规则如下:
1、不写H,也不写W的情况下, 表示 宽高比,宽在前,高在后。
2、写了W 和 不写W 效果是一样的,都是 表示 宽高比
3、加了 “H,” 表示 倒置 分数的意义, 表示 高宽比, 看清楚,高在前,宽在后。而高又是固定的值,别看岔了