![]() |
AW: Fragen zu FMX unter Android
Zitat:
Delphi-Quellcode:
{$R *.res}
//////////////////////////////////////////////////////////////////////////////// /// /// To check if the app is running on a Pad /// function IsPad: Boolean; begin {$IFDEF IOS} Result := TUIDevice.Wrap(TUIDevice.OCClass.currentDevice).userInterfaceIdiom = UIUserInterfaceIdiomPad; {$ENDIF} {$IFDEF ANDROID} Result := (MainActivity.getResources.getConfiguration.screenLayout and TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_MASK) >= TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_LARGE; {$ENDIF} end; //////////////////////////////////////////////////////////////////////////////// /// /// Main Program /// begin Application.Initialize; Application.FormFactor.Orientations := [TFormOrientation.Portrait, TFormOrientation.InvertedPortrait, TFormOrientation.Landscape, TFormOrientation.InvertedLandscape]; if IsPad then Application.CreateForm(TPadMainForm, PadMainForm) else Application.CreateForm(TPhoneMainForm, PhoneMainForm); Application.Run; end. |
AW: Fragen zu FMX unter Android
Die Form-Vererbung... Man, da hätte ich auch selbst drauf kommen können. :oops:
Vielen Dank, klappt super! |
AW: Fragen zu FMX unter Android
Kleine Frage: Ich habe in der Quell-Form ein TScaledLayout, dessen Column[0] ich in einer abgeleiteten Form vergrößern möchte. Beim Start bekomme ich jedoch dann den Fehler
Code:
Ich habe jedoch nur die Größe im Designer geändert und die Original-Form läuft ...
Exception EReadError in Modul xxx.exe bei 000C1EE0.
Fehler beim Lesen von gridPanel.ColumnCollection: Eine Spalte, die Steuerelemente enthält, kann nicht gelöscht werden. |
AW: Fragen zu FMX unter Android
Warum dieses TScaledLayout ? Versuche mal die Komponenten nur mit Align und Anchors entsprechend zu Positionieren und Auszurichten. Habe damit bis jetzt keine Probleme gehabt.
|
AW: Fragen zu FMX unter Android
Ich verwend Checkboxen und wenn sich die Auflösung massiv ändert, dann ändert sich die Größe von den Teilen nicht. Außer halt bei TScaled.
|
AW: Fragen zu FMX unter Android
Sei mir net bös, aber warum Checkboxen. Ich habe bis jetzt noch keine Checkboxen in einer App gesehen. Dafür würde ich eher TSwitch nutzen.
|
AW: Fragen zu FMX unter Android
Steht so im Pflichtenheft :(
|
AW: Fragen zu FMX unter Android
Hat jemand eine Idee, wie ich zwischen den verschiedenen Größen unterscheide? Android Tablets gibt es ja von ... bis.
Ich kann ja im Designer verschiedene Tablets auswählen ("Google Nexus") usw. und alles darauf anpassen. Aber wie entscheide ich beim Start, welche der angepassten Forms geladen werden? Aktuell kann ich nach den Sourcen meiner Vorgänger nur zwischen Handy und Tablet unterscheiden. |
AW: Fragen zu FMX unter Android
Frage selbst beantwortet, funktioniert in fast allen Fällen.
Code:
uses ... FMX.Platform.Android, Androidapi.JNI.GraphicsContentViewText, FMX.Helpers.Android, ... function IsTabletNormal: Boolean; // z.B. Handy begin Result := (MainActivity.getResources.getConfiguration.screenLayout and TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_MASK) >= TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_NORMAL; end; function IsTabletLarge: Boolean; // z.B. 7" Nexus begin Result := (MainActivity.getResources.getConfiguration.screenLayout and TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_MASK) >= TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_LARGE; end; function IsTabletXLarge: Boolean; // z.B. 10" Nexus begin Result := (MainActivity.getResources.getConfiguration.screenLayout and TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_MASK) >= TJConfiguration.JavaClass.SCREENLAYOUT_SIZE_XLARGE; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz