![]() |
ShowModal komisches Verhalten
Hallo eine Frage verwendet wer von euch das ShohModal auf iOS Geräten?
Im Simulator und einem älteren iPAD funktioniert das ohne Probleme. Aber auf einem neuen iPhone verhält es sich komisch - das Fenster, das per ShowModal kommen sollte, ist oft nicht sichtbar, da muss man dann einiges rumklicken aus App raus wieder rein, dann sieht man es. Und auch beim verlassen des Fensters bleibt es oft einfach stehen, und man sieht das Hauptfenster nicht - bis man einiges herumspielt. Wer eine Idee wo und wie ich da weiterkomme? |
AW: ShowModal komisches Verhalten
Du musst eine Callbackfunktion angeben und dort den Code für die Verarbeitung nach dem Dialog angeben.
|
AW: ShowModal komisches Verhalten
das hätte ich eigentlich aber ist trotzdem ein sehr komisches Verhalten
Unten ist der Code zum anzeigen des SettingsForm Man sieht auf dem Handy (iPhone 14 Pro) das er die Kamera zwar ausschaltet (Das grüne Licht ist weg) das Bild bliebt dann stehen (da ja CameraComponent.Active := False) steht aber das Setting Form wird nicht angezeigt. Dann gehe ich einfach normal raus, wieder rein, und ich sehe das Settings form. In 1 von 10 Fällen funktioniert es das es sofort angezeigt wird. Beim beenden des Settings Form ist es blöder, da wird die Kamera nicht mehr angezeigt, und es dauert länger (mehrere Versuche) bis ich den normalen Screen wieder sehe
Delphi-Quellcode:
procedure TCameraForm.actShowSettingsExecute(Sender: TObject);
var SavedCameraActive: Boolean; begin SavedCameraActive := CameraComponent.Active; SettingsForm.Camera := CameraComponent; CameraComponent.Active := False; SettingsForm.lbiFormat.ItemData.Detail := fImageFormat; SettingsForm.ShowModal(procedure (AResult: TModalResult) begin CameraComponent.Active := SavedCameraActive; fImageFormat := SettingsForm.lbiFormat.ItemData.Detail; end); end; |
AW: ShowModal komisches Verhalten
Was da auch komisch ist.
Die App ist im Fullscreen modus (keine softKEys und die Titelleiste ist auch nicht da) Wenn ich in die Settings gehe dann ist es immer noch FullScreen. Wenn ich das Modale Form verlasse dann schaltet er mir den FullScreen mode aus |
AW: ShowModal komisches Verhalten
Modal gibt es in den mobilen Platformen "eigentlich" nicht. (iOS/Android)
Laut den Herstellern, dieser OS, ist es auch verboten, den Hauptthread zu blockieren, was somit einer modalen/wartenden Arbeitsweise wiederspricht. Fenster dürfen offiziell nur asynchron aufgerufen werden, also der Aufruf kehrt sofort zurück und Rückgaben werden in den CallBack-Events ausgewertet. Bei allem Anderem bist'e selbst Schuld, falls es Probleme gibt. |
AW: ShowModal komisches Verhalten
Zitat:
"ShowModal" und der Hauptthread wird ja nicht blockiert sondern dann asynchron die procedure aufgerufen wenn der Settings Dialog wieder geschlossen wird. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:11 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