[杂谈]!错误!在 Android 下这么用 ShowModal 是错误的!

1、直接调用 ShowModal 肯定是不行的,Android 下直接抛出异常。而 iOS、OSX、Windows 下是没问题的。 2、像下面这样用循环模拟 ShowModal 也是不行的,如果只是这么简单,Delphi 早就实现了。这个代码在我手机上实测存在的主要问题就是你按回退键没响应。 [crayon-594e8

[FMX] 使用 TLine 做参考线来实现复杂布局控制

昨天有朋友看到FMX 布局策略 一文中下图的布局,想知道如何设计这种复杂的布局。实际上,这种布局确实比较复杂,设计时确实比较费劲的。 1、钟表环的设计 这个比较简单,用两个 TCircle,假设分别命名为clOuter、clInner,我们将 clInner 的父设置为 clOuter,然后设置 clInner 的 M

[译]FMX 布局策略

【注】本文虽是翻译,但老外写的太啰嗦,在保持含义不变的情况下,行文会进行精简。原文来自于官方帮助。 FireMonkey 布局是其它图形对象的容器,可用来构建复杂的可视界面。FireMonkey 布局扩展了 TControl 的功能来控制子控件的对齐、大小、缩放以及成组控制控件的可能。就象 Position、Align

[FMX] 使用 FMX 开发 Android 程序的一点小体会

1、FMX 开发 Android 程序,你可以利用现有的控件组合出复杂的控件效果,这点很强大。比如,我们都知道默认 FMX 的 SpeedButton 和 Button 等都没有图标,没有关系,我们可以有100种方法让它拥有图标,最简单的莫过于直接放一个 TImage 和 TLabel 上去,然后调整下 TImage

[FMX] Android 下为你的程序开启抗锯齿

先看一张图:HQ-0 是简单设置 Form 的 Quality 为 HighQuality 的结果,HQ-1 是做了进一步设置的结果,DQ 是默认的效果,大家可以看到,HQ-0 和默认的没有抗锯齿的效果没啥区别。 那么,问题的关键在那里呢? 问题的关键就在你设置完品质选项后,还需要调用一个函数,缺少它,更改品质的代码不

[FMX] 使用 TabControl 实现页面滑动效果之二

之前的文章 写法自己要写的东西多一些,实际上,FMX 的Standard Actions 里提供了两个标准的动作,可以方便的实现。 1、老规矩,放上 TabControl,添加几页,然后随便放点内容。 2、添加 TGuestureManager 和 TActionList,然后设置 TabControl.Touch.G

[FMX] 步步惊心 – FMX Canvas 研究笔记

【注】下面的内容,仅适用于 Delphi/C++ Builder X,至于其它版本,不做任何保证。 研究一个新的东西,难免会将老的观念带进来,也难免会遇到不同的坑,有些坑是自己挖的,有些坑是厂商或作者挖的,一路走来,堪称步步惊心。FMX 目前来说,改进很大,但坑仍然还有很多,慢慢研究,慢慢摸索,希望与大家一同进步。 1

[FMX] 一个生成二维码的函数

需要用到 DelphiZXingQRCode 单元,这个单元可以到作者的官网去下载。这个函数只是一个简单的封装:

用法:调用这个函数,返回一个TBitmap,你用来显示也好,干啥也好不用了释放了就好,没啥可说的。 至于 VCL 的版本,愿意就自己改一个吧

[FMX] 在 Delphi/C++ Builder 中开发低功耗蓝牙设备

从蓝牙4.0开始定义了不同类型的蓝牙协议,原来的蓝牙协议改称为经典蓝牙(Classic Bluetooth),新的低功耗版本被称为BLE(Bluetooth Low Energy)。 要在 Delphi 或 C++ Builder 中使用低功能蓝牙,需要做以下步骤: 1、在你的工程中放一个 TBlueToothLE 组

[FMX]好吧,又抓到 FireMonkey 的两个 Bug

【问题描述】 1、创建一个子窗体,上面放一个按钮,然后你在主窗体上放一个按钮,随便写点响应代码,然后调用子窗体的Show方法,将子窗体Show出来。编译为 Windows 32 位程序,你会发现那个按钮,需要点两下才能反应。 2、继续上面的问题,你如果将子窗体设置 BorderStyle 设置 None。然后编译为 A

[FMX] 使用 TTextLayout 来加快批量文本绘制

实际上,我们在绘制大量文本时,如果调用 TCanvas.FillText,会重复的创建和翻译 TTextLayoutManager 对象,影响绘制效率。所以,如果你要在 FMX 应用中大量绘制文本时,应该尽量将 TTextLayoutManager 独立出来,用它来绘制,而不是用 FillText,我实际做了下测试,同