Noch ein Fehlerchen in Verbindung mit dem iOS-Simulator
Delphi-Quellcode:
unit Form.Main;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
FMX.Controls.Presentation;
type
TForm1 =
class(TForm)
ToolBar1: TToolBar;
toggleStatusBarButton: TSpeedButton;
procedure toggleStatusBarButtonClick(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
procedure TForm1.toggleStatusBarButtonClick(Sender: TObject);
begin
if Self.BorderStyle = TFmxFormBorderStyle.None
then
Self.BorderStyle := TFmxFormBorderStyle.Sizeable
else
Self.BorderStyle := TFmxFormBorderStyle.None;
end;
end.
Ein paar mal auf dem Button gesteppt und wenn man Glück hat kommt nur das hier
iOS Simulator Screen Shot 12.05.2015 15.15.35.png
oder die App stürzt einfach sang und klanglos ab.
Nachtrag:
Unter Android geht das nur, wenn man das in dem originalen UIThread ausführt:
Delphi-Quellcode:
uses
FMX.Helpers.Android;
procedure TForm1.toggleStatusBarButtonClick( Sender: TObject );
begin
CallInUIThread(
procedure
begin
if Self.BorderStyle = TFmxFormBorderStyle.None then
Self.BorderStyle := TFmxFormBorderStyle.Sizeable
else
Self.BorderStyle := TFmxFormBorderStyle.None;
end );
end;
stürzt dort aber genauso ab - ok, gefühlt häufiger (getestet auf einem echten Device)
Kaum macht man's richtig - schon funktioniert's

Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)