Android页面四大布局运行结果

LinearLayout

LinearLayout是一种线性布局,按照水平或垂直方向排列子视图。默认方向为水平(horizontal),可通过android:orientation属性修改为垂直(vertical)。子视图按照添加顺序依次排列,支持权重(android:layout_weight)分配剩余空间。

特性:

  • 简单高效,适合单一方向的布局需求
  • 权重属性可实现动态比例分配
  • 嵌套过多会导致性能下降

MainActivity.java文件

​编辑

代码运行结果:

​编辑

NeonLamp

NeonLamp并非Android官方布局,而是自定义实现的霓虹灯效果视图。通常继承自View或ViewGroup,通过自定义绘制实现发光、闪烁等视觉效果。需在代码中处理动画和着色器效果。

实现要点:

  • 使用Shader实现渐变发光效果
  • 通过ValueAnimator控制动画周期
  • 自定义属性支持XML配置

代码运行结果:

​编辑

RelativeLayout

RelativeLayout通过相对定位排列子视图,每个视图可以相对于父容器或其他视图定位。常用属性包括android:layout_alignParentTopandroid:layout_toRightOf等。

优势:

  • 减少布局嵌套层次
  • 灵活处理复杂布局关系
  • 性能优于多层嵌套的LinearLayout

注意事项:

  • 过度使用会导致布局逻辑复杂化
  • 需要谨慎处理视图间的依赖关系

MainActivity.java文件​编辑

​编辑

TableLayout

TableLayout以表格形式组织子视图,继承自LinearLayout。每行由TableRow定义,列宽由最宽单元格决定。支持android:layout_span实现单元格合并。

适用场景:

  • 需要严格对齐的表格式数据展示
  • 表单类界面布局
  • 网格状UI元素排列

局限性:

  • 布局灵活性较低
  • 动态调整困难

代码运行结果:

​编辑

相关推荐
一航jason11 分钟前
Speed Tools:一套低侵入的 Android 插件化 + 动态换肤 + 字体切换框架
android·插件化·组件化·换肤
李斯维1 小时前
Jetpack 可观察数据容器 LiveData 的入门与基础使用
android·android jetpack
问心无愧05132 小时前
ctf show web入门261
android·前端·笔记
alexhilton2 小时前
车载系统中的可扩展UI:从UI嵌入到系统窗口编排
android·kotlin·android jetpack
Cloud_Shy6182 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第一章 Item 4 - 6)
android·数据库·论文阅读·python
therese_100862 小时前
安卓面试题
android
码云骑士3 小时前
Android Launcher启动过程
android
Java面试题总结3 小时前
MySQL EXISTS 详解:存在性判断、NOT EXISTS 与实战示例
android·数据库·mysql
_李小白4 小时前
【android opencv学习笔记】Day 30: 滤波算法之拉普拉斯算子
android·opencv·学习
NiceCloud喜云12 小时前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring