![]() |
Delphi 10.2 - Scrollable Form Demo geht nicht
Hallo Leute,
wegen einiger Probleme in einer Android App mit Delphi 10.1 hab ich auf 10.2 upgedatet (von Berlin auf Tokyo) Jetzt sind einige Fehler weg - aber neue dazugekommen :-) .. Jetzt geht das "Scrollen zum Eingabefeld" nicht mehr .. ich hab als Basis den Code der "Scrollable Form Demo" verwendet ... Die Demo "Scrollable Form Demo" komiliert einwandfrei, die apk Datei startet auf dem Android Gerät (2 verschiedene) .. wenn die virtuelle Tastatur eingeblendet wird, liegt diese über dem Eingabefeld .. der Bildschirm scrollt nicht mehr hoch.. Jetzt hab ich im Internet folgende Aussage gefunden: "FYI - OnVirtualKeyboardShown Broken in Tokyo for Android" -> ![]() Stimmt das, und wie kann ich das beheben? Wie kann ich ggf. ein Update (woher??) einspielen ?? Meine Version ist: Embarcadero® RAD Studio 10.2 Version 25.0.26309.314 - "Professional with Mobile" Vielen Dank Erich |
AW: Delphi 10.2 - Scrollable Form Demo geht nicht
ups.. hab jetzt schnell ein showmessage eingebaut .. und das wird ausgeführt .. also doch nix mit "OnVirtualKeyboardShown Broken in Tokyo "
.. und ich hab das Projekt1 nun noch mal mit Delphi 10.1 kompiliert ... und da passt alles .. der Bildschirm scrollt so weit hoch bis das Edit schön sichtbar ist ... komisch ist nur das das "showmessage" anscheinend 2 x ausgeführt wird .. ich muß es in der 10.1 compilierten Version 2 mal wegklicken..
Delphi-Quellcode:
procedure TForm1.FormVirtualKeyboardShown(Sender: TObject;
KeyboardVisible: Boolean; const Bounds: TRect); begin showmessage('Einblenden'); FKBBounds := TRectF.Create(Bounds); FKBBounds.TopLeft := ScreenToClient(FKBBounds.TopLeft); FKBBounds.BottomRight := ScreenToClient(FKBBounds.BottomRight); UpdateKBBounds; end; |
AW: Delphi 10.2 - Scrollable Form Demo geht nicht
So wie ich das im Kopf habe sind bei 10.2 die Bounds vom Keyboard falsch. Nehme einfach DisplayHeigth / 2 oder ähnliches.
|
AW: Delphi 10.2 - Scrollable Form Demo geht nicht
reines Interesse:
Welches "echte Problem" hast du mit Delphi Berlin "10.1update2" bei Android, wo du dir erhoffst oder weißt das es mit Tokyo "10.2hf1+2" besser geworden ist(bzw. sein sollte) ? Wir "bemühen" uns aus Prinzip immer mit der aktuellesten(ja auch bezahlten) Delphi Version zu arbeiten... praktisch nutzen wir aktuell sowohl unter IOS als auch erst recht für Android unser "Berlin 10.1u2" weiter, testen aber parallel auch alles immer im Vergleich zu aktuell "Tokyo 10.2hf2"... daher die Frage nach dem Problem, für das wir wenn nachvollziehbar gerne einen eigenes Testprojekt machen würden, |
AW: Delphi 10.2 - Scrollable Form Demo geht nicht
Zitat:
Das OnVirtualKeyboardShown wird mehrmals aufgerufen. Beim allerersten Mal nach dem Start der App sind die Bounds-Werte noch korrekt, danach nicht mehr. Also merke ich mit beim allerersten OnVirtualKeyboardShown das Bounds und verwende künftig nur noch diesen Wert, egal was aktuell übergeben wird. Nachteil: Wenn das Gerät gedreht wird, und OnVirtualKeyboardShown zuerst im Portrait-Modus aufgerufen wurde, stimmt das Bounds im Landscape-Modus nicht mehr. Damit kann ich für meine Zwecke aber leben. |
AW: Delphi 10.2 - Scrollable Form Demo geht nicht
ich hab jetzt folgendes... funktioniert für mich :-)
Delphi-Quellcode:
procedure TForm1.FormVirtualKeyboardShown(Sender: TObject;
KeyboardVisible: Boolean; const Bounds: TRect); begin FKBBounds := TRectF.Create(Bounds); FKBBounds.Top := trunc(screen.Height/2)-40; FKBBounds.Left:= 0; FKBBounds.Width:= screen.Width; FKBBounds.Height:= trunc(screen.Height/2)+40; //FKBBounds.TopLeft := ScreenToClient(FKBBounds.TopLeft); //FKBBounds.BottomRight := ScreenToClient(FKBBounds.BottomRight); UpdateKBBounds; end; P.S. Hallo Mensch72 hauptsächlich waren für mich 2 Fehler - die durch 10.2 beseitigt worden sich - wichtig: Die SystemStatusBar von Android wurde nicht richtig berechnet (Höhe) deshalb hab ich meine App auf "Fullscreen" setzten müssen Beim Druck auf den "Home-Button" von Android ist meine App angehalten worden .. nach einer Minute warten (ohne Userinteraktiin) kam dann auf einmal "Project1 wurde beendet" Die Fehlerliste: ![]() LiGrü Erich |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:45 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 by Thomas Breitkreuz