Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Fragen zu FMX unter Android (https://www.delphipraxis.net/180598-fragen-zu-fmx-unter-android.html)

greenmile 2. Jun 2014 11:38

Fragen zu FMX unter Android
 
Hallo,

ich habe mich inzwischen einigermaßen voran gearbeitet, meine App läuft soweit unter Android. Ich habe jedoch einige Punkte, die ich einfach nicht lösen kann, Google half leider auch nicht weiter:

- Gerät sperren/entsperren
Wenn meine App läuft und ich das Gerät sperre/entsperre, dann ist meistens die Anwendung nur noch ein einziger Klumpen, man sieht also keinen Text, keine Buttons, nix mehr. Ich habe schon mit "AddAppEventHandler" / "AppEventHandler" das Event "BecameActive" sowie "WillBecomeForeground" abgefangen und dort ein "Form.Invalidate" sowie "Application.Processmessages" gemacht, hilft leider nicht.

- Buttons / Themes
Ich verwende ein Std. Android-Theme für FMX, außerdem auf der Form Buttons mit dem Stylelookup "nexttoolbutton". Blödeweise kann man das Symbol teilweise sehr schlecht lesen. Kann man das im Designer ändern (also die Konturen heller machen) oder muss ich extra den Style anpassen?

- App beenden
Ich weiß, dass eine App eigentlich nicht beendet werden sollte, ich tue es trotzdem :) Dafür verwende ich "SharedActivity.finish;". Das funktioniert in den meisten Fällen, manchmal kann ich die App jedoch anschließend nicht mehr starten, es kommt dann nur noch ein grauer Klumpen (wie bei Punkt 1). Laut Task-Manager ist das Programm aber vorher korrekt geschlossen.

Insgesamt verläuft die Entwicklung erstaunlich gut und einfach, ich habe es allerdings erst auf meinem S4 getestet. Mal schauen, was auf einem Note passiert :)
Bis zu diesem Zeitpunkt muss ich Embarcadero jedoch einfach mal loben!

jaenicke 2. Jun 2014 12:05

AW: Fragen zu FMX unter Android
 
Zitat:

Zitat von greenmile (Beitrag 1261012)
- Gerät sperren/entsperren
Wenn meine App läuft und ich das Gerät sperre/entsperre, dann ist meistens die Anwendung nur noch ein einziger Klumpen, man sieht also keinen Text, keine Buttons, nix mehr.

Das passiert bei mir nicht. Hast du vielleicht eine kleine Beispiel-App?

greenmile 2. Jun 2014 12:06

AW: Fragen zu FMX unter Android
 
Da reicht eine normale Hello-World App auf einem Galaxy S4.

Darlo 2. Jun 2014 12:22

AW: Fragen zu FMX unter Android
 
Zitat:

Zitat von greenmile (Beitrag 1261012)
- Gerät sperren/entsperren
Wenn meine App läuft und ich das Gerät sperre/entsperre, dann ist meistens die Anwendung nur noch ein einziger Klumpen, man sieht also keinen Text, keine Buttons, nix mehr. Ich habe schon mit "AddAppEventHandler" / "AppEventHandler" das Event "BecameActive" sowie "WillBecomeForeground" abgefangen und dort ein "Form.Invalidate" sowie "Application.Processmessages" gemacht, hilft leider nicht.

Hatte so ein ähnliches Problem auch mal und habe es mit

Delphi-Quellcode:
  frmMain.Width := Screen.Size.Width;
  frmMain.Height := Screen.Size.Height;
hinbekommen.

Gruß

greenmile 2. Jun 2014 12:26

AW: Fragen zu FMX unter Android
 
Im Event "BecameActive" hast Du frmMain.Width := Screen.Size.Width; / frmMain.Height := Screen.Size.Height; definiert?

Hat leider nichts gebracht. Am einfachsten lässt es sich reproduzieren, in dem man die App in Delphi auf dem Android startet, während dieses Gesperrt ist. Entsperrt man das Handy, nachdem Delphi die App übertragen hat, sieht man nix mehr. Zumindest in den meisten Fällen. Ich verwende nur Komponenten, die ab Werk mit dabei sind, also PageControl, Labels, Buttons, Images.

greenmile 2. Jun 2014 18:29

AW: Fragen zu FMX unter Android
 
Den Punkt "Gerät sperren/entsperren" kann ich von der Liste streichen, war ein Design-Fehler: Ich habe bei Android immer eine Form mit Kopf-/Fußzeilen genommen. Die untere Toolbar hat dann jedoch immer die Anchors "Left, Top, Right, Bottom". Wenn das Gerät nun gesperrt und entsperrt wird, scheint sich die Größe der Form zu ändern. Die untere Toolbar passt sich an, ändert sich jedoch anscheinend nicht mehr zurück und ist plötzlich bildschirmfüllend. Einfach den Anchor "Top" als false gesetzt und schon klappt es.

Bei den restlichen Punkten bin ich leider noch nicht weiter.

Rene2 3. Jun 2014 09:47

AW: Fragen zu FMX unter Android
 
So ein Problem mit sperren/entsperren habe ich auch siehe hier. Das konnte ich noch nicht lösen, werde aber mal Deine Strategie ausprobieren.

greenmile 3. Jun 2014 10:06

AW: Fragen zu FMX unter Android
 
Es gibt doch Unterschiede zwischen XE5 und XE6. In XE6 hat sich wirklich was getan, so hätte es von Anfang an sein müssen.
Es macht schon Spaß zu sehen, wie die Anwendung mit wenig Aufwand mal eben auf einer anderen Plattform läuft; wenn auch teilweise recht langsam.

Ich raffe FMX aber noch nicht so richtig. Ich habe eine Anwendung für das Galaxy S4 designed, verwende nur original Labels, Checkboxen usw. mit original Eigenschaften (Style). Ich bin jetzt davon ausgegangen, dass, wenn ich die App auf einem Galaxy Tab laufen lasse, alles gleich aussieht. Während aber auf dem S4 z.B. die hälfte des Bildschirms mit Texten gefüllt wird, braucht derselbe Text auf dem Galaxy Tab nur 1/3, es wird also nicht hochskaliert. Irgendwas übersehe ich. Oder verstehe ich falsch.

Darlo 4. Jun 2014 10:38

AW: Fragen zu FMX unter Android
 
Ich glaube nicht, dass eine automatische Skalierung funktioniert, bzw. dass es diese gibt. Wir machen immer zwei Designs, eins für Phone und eins für Tablet.
Meist sieht ein Phone-Design, primär im Hochformat, auf einem Tablet, das gerne im Querformat genutzt wird, schrecklich aus.

greenmile 4. Jun 2014 10:42

AW: Fragen zu FMX unter Android
 
Machst Du dafür jedesmal ein neues Projekt? Oder wie habt ihr die verschiedenen Screens voneinander getrennt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:31 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz