关于Linearlayout中控件设置为其底部的问题,android:layout_gravity="bottom"没效果
昨天在做项目的时候遇到一个问题。布局文件中父布局为Linearlayout,宽度: android:layout_width="match_parent";高度:android:layout_height="match_parent",然后父布局中有一个RelativeLayout,我想把这个RelativeLayout放在父布局中的底部,于是添加了:android:layout_gravity="bottom",但是发现并没有效果,然后查了一下资发现:
当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。
当 android:orientation="horizontal" 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。
知道原因后还要想办法解决,于是想到了weight,然后这样设置RelativeLayout的属性:
android:layout_height="0dp"
android:layout_weight="1"
发现问题解决了!
不过要提醒的是,父布局的高度必须为"match_parent",这样weight才会有效果。
设置好之后发现RelativeLayout确实是在底部,但是里面的内容还是在RelativeLayout的上面,也就是说显示效果还和之前的一样,不过这个很好解决,只需设置RelativeLayout的gravity为bottom: android:gravity="bottom",这样就解决了!完美...
更多相关文章
- Android界面布局详解
- android_relative布局参数学习
- Android开发之——布局实例
- android 设置布局动画
- Android LinearLayout中实现水平方向控件居右
- android 常用布局有哪些
- Android界面布局基本知识简述
- Android布局属性解析