Android开发-java版:布局

布局

1.LinearLayout布局(线性布局)

修改根布局为LinearLayout布局

使用android:orientation指定线性方向

vertical代表垂直方向

horizontal代表水平方向

如果android:orientation的值为horizontal,则不能将内部控件宽度设置为match_parent(与父元素同宽),因为会遮挡水平方向上的其他控件

同样,如果android:orientation的值为vertical,则不能将内部控件高度设置为match_parent(与父元素同高),会遮挡垂直方向上的其他控件

android:layout_gravity是控件在布局中的对齐方式

布局中==> 上:top;下:bottom;左:start/left;右:end/right;

start和end是开始边和结束边的方向

++如果使用android:layoutDirection="ltr",则表示左到右==>left to right,开始边就是左边,结束边就是右边(写在父布局里)++

++如果使用android:layoutDirection="rtl",则表示右到左==>right to left,开始边就是右边,结束边就是左边(写在父布局里)++

那么在horizontal水平布局中,三个按钮上中下就是top、center、bottom

在vertical垂直布局中,三个按钮左中右就是start、center、end

我们将android:layout_width设置为0dp,同时给android:layout_weight设置一个值,如下,系统会将整个布局中同一方向上的layout_weight值相加,然后以当前控件的值占总值的大小为当前控件设置对应的大小。(比如这里是水平方向上相加,1/(1+1),于是各占一半)

也可以设置垂直方向,需要将layout_height设置为0dp

如果我们将按钮的layout_weight删除,同时将layout_width改回wrap_content,这表示,按钮按照内容所占大小自动调整,然后EditText控件会占满剩余空间。

2.RelativeLayout(相对布局)

1.控件相对于父布局定位

2.控件相对于控件定位

使用id指定相对控件的引用

layout_above指一个控件在相对控件的上方

layout_toLeftOf指一个控件的右边与相对控件的左边对齐

layout_alignLeft指一个控件的左边与相对控件的左边对齐

3.ConstraintLayout(约束布局)

在约束布局中,水平和垂直方向上必须至少有一个约束条件

app:layout_constraintHorizontal_bias表示在水平方向上的偏移量

app:layout_constraintVertical_bias表示在垂直方向上的偏移量

想要使用以上的偏移量,需要保证在各个方向上有两个约束,水平方向左右,垂直方向上下。

可以以一个控件的位置去约束另一个控件

4.Layout(自定义布局)

1.在layout里创建一个title.xml,随意写一个标题栏

2.然后在主活动中引入

3.隐藏自带标题栏

在.java文件中使用actionBar.hide()隐藏

4.运行即可看到自定义的标题栏

相关推荐
ANYOUZHEN3 小时前
bugku shell
android
三水不滴5 小时前
Redis 过期删除与内存淘汰机制
数据库·经验分享·redis·笔记·后端·缓存
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [drivers][i2c]i2c-dev
linux·笔记·学习
南宫码农6 小时前
我的电视 - Android原生电视直播软件 完整使用教程
android·开发语言·windows·电视盒子
土拨鼠烧电路6 小时前
笔记03:业务语言速成:“人、货、场”模型与IT系统全景图
笔记
道亦无名6 小时前
音频数据特征值提取 方法和步骤
android·音视频
Lancker6 小时前
定制侠 一个国产纯血鸿蒙APP的诞生过程
android·华为·智能手机·鸿蒙·国产操作系统·纯血鸿蒙·华为鸿蒙
2301_812731417 小时前
CSS3笔记
前端·笔记·css3
越努力越幸运5087 小时前
CSS3学习之网格布局grid
前端·学习·css3
chillxiaohan7 小时前
GO学习记录——多文件调用
开发语言·学习·golang