前言
实践是最好的学习方式,技术也如此。
一、布局
- 基本概念
- 布局
layout:就是layout目录下的一个个.xml文件;
- 布局
- xml 文件
- 本质还是 Java 代码;采用 xml 方式进行布局,目的是为了方便开发者进行直观的布局;
- 层级结构
- 每一块都是一个节点;
- 每个节点都是一个视图;
- 外层的是父节点,里层是子节点;
- 每个节点都可以声明属性;
xml布局文件中的每个view节点,最终也都会被解析成Java代码类; 每个节点都是对应一个 Java 类,实现都是通过 Java 代码进行实现;- 如何实现将
xml文件实现我们看到的显示界面?- 通过对
xml进行解析,对xml文件从上往下开始遍历解析;每遍历到一个节点都会将其实例化成一个类; - 所以本质上是可以自己通过
Java代码来写一个一个的控件的;
- 通过对
二、实现
- 新建一个布局页面 layout
- 注意点
- 文件命名不能有大写字母;
- 文件命名要用下划线分割(每个分割都用一个单词来命名,每个变量命名要有意义) ;
三、View
-
分类
- 容器类型的 View:例如,
LinearLayout; - 子 View (也可以称为控件):例如,
TextView、Button;
- 容器类型的 View:例如,
-
视图 view
- 就是
xml文件里的每个节点,对应页面上的元素; - 共有属性
layout_width/layout_height: layout_width 定义控件的宽度, layout_height 定义控件的高度;textidgravity:表明控件本身的放置位置;layout_gravity:表明控件本身在父布局中的位置;Background
- 就是
-
布局容器
-
RelativeLayout(相对布局)- 通过定义视图之间的相对关系来确定它们的位置;
- 定位视图的方式
- 相对位置;
- 对齐方式;
- 边距;
- 视图的位置是相对于其他视图或父容器而言的;
- 可以通过属性来指定视图之间的相对位置/将视图居中对齐/设置视图的边距和相对位置;
-
LinearLayout(线性布局)- 它将视图按照
水平(android:orientation="horizontal")或垂直(android:orientation="vertical")方向进行线性排列; - 默认情况下,视图按照它们在 XML 文件中的顺序进行排列,但可以使用
android:layout_gravity属性来设置视图在布局中的对齐方式;
- 它将视图按照
-
-
View 的继承关系
- android 中所有的 view 都继承自 View;
-
view 与 ViewGroup 的关系
ViewGroup可以包含子view或者子ViewGroup;- 区分:里面能包含
子view或者子ViewGroup的就是ViewGroup,不能的就是view;
本文介绍了Android开发中布局的基础概念,包括XML布局文件的作用,视图层次结构,以及LinearLayout和RelativeLayout的使用。重点讲解了如何通过XML和Java代码实现控件布局,以及View和ViewGroup的区别和属性设置。
253

被折叠的 条评论
为什么被折叠?



