JoeDevFloatingArrangement 扩展:让布局悬浮在其它组件之上(不占位)或整屏悬浮层

« 返回首页

JoeDevFloatingArrangement 扩展

让布局”漂浮”在其它组件之上:可以把一个布局悬浮在某个父布局的其它组件之上(不挤占它们的位置),也可以把布局作为整屏悬浮层盖在整个屏幕之上,适合做模态框、弹出菜单、加载页等覆盖效果。

下载

joejsanz.joedevfloatingarrangement.aix(v1.2)

FloatingArrangement.aia - 原作者示例项目

基本信息

  • 版本:v1.2
  • 发布时间:2025-02-15(首发),v1.2 更新于 2026-08-17
  • JDK:11
  • 最低 API 级别:14
  • 构建方式:FAST-CLI v7.0.0-premium
  • 体积:aix 约 8.7KB;示例项目 FloatingArrangement.aia 约 137.4KB
  • 授权:免费(欢迎 PayPal 捐赠 支持作者)

两个方法的区别(核心口诀)

  • MakeFloating —— 浮在某个特定布局之上:悬浮布局显示在父布局内、盖在其它组件上面,但不会把它们挤开;对齐方式跟随父布局的 AlignHorizontal / AlignVertical 属性。
  • ShowOverlay —— 浮在整个屏幕之上:悬浮布局盖住整个屏幕,适合做模态框、弹出菜单、加载页这类需要盖在主界面之上的界面。

截图

悬浮效果演示

悬浮效果演示

MakeFloating 方法

MakeFloating 方法

ShowOverlay 方法

ShowOverlay 方法

HideOverlay 方法

HideOverlay 方法

方法

MakeFloating布局悬浮(父布局,悬浮布局)
让悬浮布局显示在父布局之内、悬浮于父布局的其它组件之上——不会挤开这些组件(它们仍按原样排列)。对齐方式跟随父布局的 AlignHorizontal / AlignVertical 属性。
ShowOverlay显示整屏悬浮层(悬浮布局)
把悬浮布局作为整屏悬浮层显示,盖在整个屏幕之上。适合做模态框、弹出菜单、加载页等。
HideOverlay隐藏整屏悬浮层()
隐藏整屏悬浮层(若它正在显示)。

使用注意

  • MakeFloating 的父布局必须是 HVArrangement(水平布局 / 垂直布局等容器组件)。社区成员 TIMAI2 实测直接把 Screen1 当父布局传入:效果能用,但运行时会报类型错误(Argument #2 应为 HVArrangement)——需要盖全屏时请改用 ShowOverlay。
  • 屏幕旋转后悬浮层位置不更新时(社区成员 S4IL 反馈),作者答复:给悬浮布局显式设置宽和高即可正确更新。

版本更新

v1.1(2025-09-07)

  • 新增 ShowOverlay / HideOverlay,支持整屏悬浮层。

v1.2(2026-08-17)

  • 修复 MakeFloating 未获取布局高度与宽度的问题。

版权信息

本文档内容依据原作者发布页面整理翻译,版权归原作者所有。

  • 原作者:Joe J. Sánchez(Joejsanz)
  • 原始网址:https://community.appinventor.mit.edu/t/floatingarrangement-make-an-hvarrangement-float-above-other-elements-within-another-hvarrangement/139585
  • 发布日期:2025年2月15日
文档反馈