1. Android的基础布局
LinearLayout 线性布局
RelativeLayout 相对布局
TableLayout 表格布局
FrameLayout 帧布局(框架布局)
ConstrantLayout 约束布局 (Android Studio默认布局) 用于拖拽的
2. LinearLayout 线性布局
2.1 怎么将Android Studio默认的ConstrantLayout改为LinearLayout
1. 在design页面下->component tree->ConstrainLayout右键->Convert view...->选择LinearLayout 点击apply 1. 在code页面下->直接修改代码 将 androidx.constraintlayout.widget.ConstraintLayout 改为 LinearLayout
2.2 线性布局有两种:
-
水平的线性布局 所有控件都是水平挨个排布
如果没有android:orientation属性的存在
或者
android:orientation="horizontal"
-
垂直的线性布局 所有控件都是垂直挨个排布
android:orientation="vertical"
tips: 在android中,所有在页面上显示的东西,必须具备两个属性,这两个属性是宽和高
android:layout_width 宽度
Android:layout_height 高度
对于宽度和高度,他们的值有三个
1. wrap_content 按照内容自适应 1. match_parent 按照父容器尺寸填满 1. 50dp 数值(用的地方很单一)
2.3 比重:
android:layout_weight 如何算总比重: 看同一父亲且同一级的各个控件的weight 一旦weight属性生效,android:layout_width失效
2.4 布局排布:
android:gravity 内容位置改变 android:layout_gravity 本身位置改变
2.5 分隔线:内部的线
android:divider="@color/black" android:showDividers="middle"
2.6 嵌套线性布局结构
<LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> </LinearLayout> </LinearLayout>
3. RelativeLayout 相对布局
第一类属性 属性值为true或者false
android:layout_centerHrizontal 水平居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent 相对于父控件完全居中
android:layout_alignParentBottom 贴紧父控件的下边缘
android:layout_alignParentLeft 贴紧父控件的左边缘
android:layout_alignParentRight 贴紧父控件的右边缘
android:layout_alignParentTop 贴紧父控件的上边缘
android:layout_alignWithParentIfMissing 如果对应的兄弟控件找不到的话,就以父控件作为参照物
第二类属性 属性值必须为id的引用名“@id/id-name”
android:layout_below 在某控件下方
android:layout_above 在某控件上方
android:layout_toLeftOf 在某控件的左边
android:layout_toRightOf 在某控件的右边
EditText的android:hint
设置EditText未输入内容(为空)的提示信息
android:gravity
对该view的设定,相对于控件内部的位置变化更改。
比如Bottom的Text,设置为right就是距离父控件。
android:layout_gravity
相对于父控件,改view的位置变化
android:layout_alignParentRight
当前控件的有段和父控件的右端对齐,属性只能为true或false,默认为false。
4. 常用的控件
TextView 文本控件 给用户一个文字性的提示
EditText 输入文本控件
ImageView 图片控件 显示图片
Button 按钮
TextView
-
掌握常用的属性
-
掌握资源文件的使用
-
如何创建资源文件,并对资源文件编程
-
使用资源文件
-
-
跑马灯 (自己探索)
-
带图片的TextView
android:drawableTop
重点1:怎么样设置一个shaper(皮肤)
在drawable文件夹下设置 xml
设置一个shaper(皮肤)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 设置一个黑色边框 -->
<stroke android:width="2px" android:color="#000000"/>
<!--渐变-->
<gradient
android:angle="270"
android:endColor="#c0c0c0"
android:startColor="#FCD" />
<!-- 设置一下边距,让空间大一点 -->
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp"
/>
</shape>
重点2:带图片的TextView
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:drawableLeft="@drawable/qq20220713093015"
android:drawableTop="@drawable/qq20220713093015"
android:drawableRight="@drawable/qq20220713093015"
android:drawableBottom="@drawable/qq20220713093015"
android:textSize="30dp"
android:text="张全蛋" />