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.运行即可看到自定义的标题栏

相关推荐
xieliyu.10 分钟前
MySQL 六大基础约束详解:NOT NULL/DEFAULT/UNIQUE/ 主键 / 外键 / CHECK
android·数据库·sql·mysql
进击的小头23 分钟前
第16篇:Buck-Boost 升降压电路:核心原理、参数计算与典型应用场景全讲解
经验分享·学习·数学建模
博界IT精灵26 分钟前
主存的扩展及其与CPU的连接(笔记没做完)
笔记·考研
霸道流氓气质36 分钟前
Java 工程师 AI 智能体学习路线 · 阶段 1:AI / LLM 基础认知 详解
java·人工智能·学习
Yang_jie_031 小时前
笔记:数据结构(链队列的相关判断条件)
数据结构·笔记
Anokata1 小时前
MYSQL SQL 执行系列1
android·sql·mysql
hunter1990101 小时前
Higress学习
学习
REDcker1 小时前
Android 15 16KB 内存页适配详解
android·开发语言·python
Kapaseker1 小时前
Android 开放这扇门,正在被 Google 从里面反锁
android·kotlin
帅次2 小时前
Android 高级工程师面试:网络与数据层 近1年高频追问 18 题
android·网络·okhttp·面试·retrofit·gilde