android:width 与 android:layout_width
android:width 表示控件内容的宽(这是控件内部的东西,内容是控件内部的东西)
android:layout_width 表示控件的宽(就是控件)
比如:
- android:width 比较小
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="10dp"
android:text="测试android:width"
/>
效果是这样的:
2. android:width 比较大
增大属性值:android:width=“200dp”
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="200dp"
android:text="测试android:width" />
效果:
3. android:layout_width 比较小
(无关变量:控制 android:width 还是2 中的大小,足够显示内容的宽度)
<Button
android:layout_width="60dp"
android:layout_height="wrap_content"
android:width="200dp"
android:text="测试android:width" />
效果:字换行了,虽然 android:width 比较大,但是内容外部的控件 的
android:layout_width 很小,迫使一行无法显示完全(被layout_width 约束)
4. android:layout_width 比较大
(但是android:width 比较小,保持与1中大小一致,)
<Button
android:layout_width="200dp"
android:layout_height="wrap_content"
android:width="10dp"
android:text="测试android:width" />
效果**:竟然完全显示**,难道 android:width 没起作用吗?
继续减小anroid:width(依然不起作用)(这个原因未知,好像是不起作用了)
<Button
android:layout_width="200dp"
android:layout_height="wrap_content"
android:width="1dp"
android:text="测试android:width" />
android:layout_weight
表示控件占父控件的所占空间的"比重"
注意:并不是值越大,就一定占区域越大,
也不是值越小,就一定占区域越小
详情参考这篇博文:
单位
单位 | 含义 | 备足 |
---|---|---|
in | 英寸 | |
mm | 毫米 | |
pt | 磅,1/72英寸 | |
px | 像素 | 显示受分辨率影响 |
dp | 基于density 的抽象单位(比例)如果一个160dpi 的屏 | 幕,1dp=1px, 所以dp=1/160 英寸 |
dip | 等同于dp | |
sp | 同dp相似,但还会根据用户字体大小偏好来缩放 |
一般推荐使用dp,字体大小使用sp