AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung IOS UniDac While Schleife mit Progressbar
Thema durchsuchen
Ansicht
Themen-Optionen

IOS UniDac While Schleife mit Progressbar

Ein Thema von oakley · begonnen am 17. Feb 2023 · letzter Beitrag vom 20. Feb 2023
Antwort Antwort
AuronTLG

Registriert seit: 2. Mai 2018
Ort: Marburg
338 Beiträge
 
Delphi 12 Athens
 
#1

AW: IOS UniDac While Schleife mit Progressbar

  Alt 17. Feb 2023, 16:56
Sieht das so aus, dass er auf 0 % steht und dann nach einer kurzen Weile plötzlich direkt auf 100 % hochgeht?

Auf IOS gibt es nämlich das Problem, dass optische Änderungen außerhalb des Mainthreads nicht direkt eine Aktualisierung der Optik auslösen.
D.h. in dem Fall würde der Ladebalken ganz normal angepasst, jedoch aktualisierte sich die Optik der Maske erst ganz am Ende, so dass der Ladebalken optisch sofort von 0 % auf 100 % ginge.
Ich habe auf IOS tatsächlich noch nie mit einem Ladebalken herumgespielt, aber das könnte passen, da du das ja in einem eigenen Thread machst.

Wenn du austesten willst, ob das der Fall ist, müsstest du deine Funktion mal im Mainthread ausführen. Ist meine Theorie korrekt, müsste es auf diese Weise so aussehen wie erwartet.

Sollte es dieses Problem sein gibt es zwar einen Trick, aber der könnte mit einem Ladebalken problematisch sein:

Man kann ein optisches Update aus einem Thread heraus dadurch erzwingen, dass man sich z.B. ein sichtbares TMemo mit Höhe 0 irgendwo auf die Maske legt und sich dann eine Methode erstellt, welche zuerst ein Memo.SetFocus und dann ein Memo.Repaint. Diese Methode ruft man dann direkt aus dem Thread auf, wenn man ein optisches Update erzwingen will.
Das Problem daran ist, dass dieser Workaround einen leichten Lag hat.

Ich habe das Problem immer dann, wenn ich nach einem erfolgreichen NFC Scan irgendwie die Optik ändere. Dafür ist der oben beschriebene Workaround ausreichend, da ich das nur ein einziges Mal nach meiner Optikanpassung machen muss.
In deinem Fall wäre das jedoch problematisch, da der Ladebalken ja eigentlich flüssig volllaufen soll.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:59 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