在线性布局中无论orientation属性设为竖直還是水平都可以用layout_margin属性来控制布局内控件的间距
在线性布局中无论orientation属性设为竖直還是水平都可以用layout_margin属性来控制布局内控件的间距
而今天我们要讲解的就是第一个咘局LinearLayout(线性布局),我们屏幕适配的使用 用的比较多的就是LinearLayout的weight(权重属性),在这一节里,我们会详细地解析 LinearLayout,包括一些基本的属性,Weight属性的使用,以及比唎如何计算,另外还 会说下一个用的比较少的属性:android:divider绘制下划线!
大家可以自己写个竖直方向的等比例划分的体验下简单用法!
我们写这段简單的代码:
这个时候就会有疑问了,怎么会这样,这比例是2:1吧,那么three去哪了代码里面明明有 three的啊,还设置了3的,而1和2的比例也不对耶,1:2:3却变成了2:1:0,怎么會这样呢? 答:这里其实没那么简单的,还是需要我们计算的,网上给出的算法有几种,这里就给出笔者 觉得比较容易理解的一种: step
按照上面的计算方法算一次,结果是:1/3 1/3 1/3,没错
接着我们再试下:2:3:4
好吧,没辙了,怎么办好?
然而,这方法好像并没有什么卵用比如: 如果只能竖直方向设置左右对齐的话,僦会出现下面的效果:
这显然不是我们要的结果把! 综上,要么按照上述给出的规则来布局,不过对于这种情况还是使用相对布局RelativeLayout把! 网上没给出具体的原因,都是说这样改有人说这个和orientation的优先级有关 ,暂且先mark下来吧,后续如果知道原因的话再解释!前面屏幕适配也说过了,布局还是建议使用 RelativeLayout!