一、Android七大布局
共7种布局,其中LInearLayout、RelativeLayout、ConstraintLayout比较常用,FrameLayout偶尔会用,GridLayout、TableLayout很少用,absoluteLayout基本不用。
- 线性布局(LInearLayout)
- 相对布局(RelativeLayout)
- 约束布局(ConstraintLayout)
ConstraintLayout 可以解决多层嵌套的问题,功能更强大,性能更高效。
- 帧布局(FrameLayout)
当我们往里面添加控件的时候,会默认把他们放到这块区域的左上角,帧布局的大小由控件中最大的子控件决定,如果控件的大小一样大的话,那么同一时刻就只能看到最上面的那个组件,后续添加的控件会覆盖前一个。
FrameLayout主要应用就是地图方面。
FrameLayout有时配合Fragment使用
SurfaceView 全屏时也用FrameLayout
- 网格布局(GridLayout)
- 表格布局(TableLayout)
TableLayout是LInearLayout的子类
- 绝对布局(absoluteLayout)
absoluteLayout是需要指定子元素的 xy 精确坐标的布局。绝对布局缺乏灵活性,在没有绝对定位的情况下相比其他类型的布局更难维护,不建议使用。
二、常用控件
- TextView 显示文本信息
- Button 普通按钮
- EditText 可编辑的文本框
- ImageView 显示图片
- ImageButton 图片按钮
- ListView 列表
- RecyclerView 列表
- CheckBox 复选框
- RadioGroup 单选按钮组(其中按钮互斥)
- WebView 显示网页
- Spinner 下拉列表组件
- ProgressBar 进度条
- SeekBar 拖动条
- RatingBar 评分组件