You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Delphi FireMonkey中如何在TMapView上方添加常驻可点击按钮

解决方案

根本原因

Android端的TMapView属于原生平台控件,采用独立的系统Surface层渲染,渲染优先级远高于FMX框架实现的普通控件(含TImage、普通TButton等)。设计器内调整的Z轴层级仅对同类型FMX控件生效,因此无论调整TImage的父容器属性还是层级,都会在地图渲染完成后被覆盖。

实现方案

不要使用TImage实现该需求,FMX自带对应专用组件:

  • 选择TFloatingActionBar组件即可,该组件专门用于实现类谷歌地图的悬浮按钮效果,Android端默认渲染层级高于所有原生控件(包括TMapView),不会被覆盖。

配置步骤:

  1. 在窗体上添加TFloatingActionBar,设置父级为TForm,不要作为TMapView的子控件。
  2. 给组件的Image属性赋值自定义的按钮图片。
  3. 调整Position属性将按钮放到你需要的悬浮位置(例如下方右下角)。
  4. 绑定OnClick事件实现对应的点击交互逻辑即可。

如果需要多组悬浮按钮,可以配合TActionList给TFloatingActionBar添加子按钮项,实现展开式悬浮菜单效果。

内容的提问来源于stack exchange,提问作者user15720529

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 07:45:04