Wie man Bildschirm-Größe in Firemonkey FM3?
How to get Abmessungen mit Firemonkey FM3 ? Die folgenden code:
var
Size: TPointF;
begin
Size := FMX.Platform.IFMXScreenService.GetScreenSize;
...
end;
Ergebnisse in dieser compiler Fehler:
[dcc32 Error] Unit1.pas(46): E2018 Record, object or class type required
Wie soll ich IFMXScreenService
- Schnittstelle verwenden, um die Bildschirmgröße ?
- Hier ist
an example
der richtige Einsatz von derIFMXScreenService
- Schnittstelle. - Dankeschön.
- Sie können nicht zum aufrufen von Methoden auf einem interface-Typ. Sie benötigen eine interface-Referenz, bevor Sie tatsächlich Methoden ausführen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies :
Screen
?Es ist nicht so einfach.
Firemonkey-hat feature namens-Auflösung
http://docwiki.embarcadero.com/RADStudio/XE5/en/Working_with_Native_and_Custom_FireMonkey_Styles
Es ist wirklich cooles feature. Wenn Sie die Arbeit mit den screens, hat retina-display, dann, was Sie malen würden, auf dem Bildschirm wird wirklich klein. Zum Beispiel die pixel-Auflösung des iPhone in der Nähe zu iPad 1 und 2, aber Bildschirm ist doppelt so groß sind.
Also auf dem iPhone wird
Aussehen wird 320x480. Und die gleichen Formen.
Aber wenn Sie verwenden
verwendet
FMX.Plattform;
Erhalten Sie aktuelle Bildschirmauflösung in Pixel.
Diese gelten auch für Mac mit Retina-display.
Hier ist eine etwas vollständigere/klare Antwort zu bekommen, die tatsächliche Bildschirmauflösung in Pixel Android (evtl. iOS, nicht getestet) Geräte:
Hier ist eine andere Lösung nicht erforderlich ist, ist die Multiplikation von scale:
Gut funktioniert in Delphi 10.3 RIO. Von dem was ich verstehe, "getRealSize" erfordert mindestens Android 4.2, aber da Delphi RIO nicht einmal die Unterstützung von alten Versionen von Android, ich glaube nicht, dass das ein show-stopper.