German Darstellungsproblem Fensterbreite CustomDialog2

Steini1980

Active Member
Licensed User
Longtime User
Hallo,
ich entwickle eine App welche für die Anwendung auf Tablets für Servicemonteure optimiert ist. In der App rufe ich einige Dialogfenster (mittlerweile durchgängig mit CustomDialog2) auf. Auch die Dialogfensterbreite habe ich mittlweile durchgängig auf 95%x verbreitert. Ich hatte hier aber auch schon absolute größen von bspw. 1000dip vorgegeben. Der Effekt ist der gleiche.

cDlg.AddView(pnl,95%x,400dip)

Nun berichten die Anwender in regelmäßigen Abständen davon, dass sich bei bestimmten Aktionen (ich konnte noch nicht herausfinden welche) die Fensterbreite umstellt, dann werden alle Dialogfenster nur noch mit einer Breite von ca. 75% dargestellt und die darunterliegenden Controls sind entsprechend nicht mehr sichtbar. Ich selbst konnte dies leider noch garnicht reproduzieren, bekomme aber regelmäßig Screenshots von den Monteuren zugesendet. Das einzige was hilft, ist ein Neustart des Tablets. Selbst wenn die Anwender lediglich die App neustarten oder in den Androidsettings die Schriftgröße/Skalierung etc. verändern hat dies keine Auswirkungen.

Hat jemand zufällig eine Idee woran das liegen könnte?

Unbenannt.JPG


P.S.: Die betroffenen Tablets sind bislang allesamt Samsung Galaxy A 2016 mit Android 8.1.0 API27
Ich nutze für die Entwicklung um die volle Bandbreite abzudecken ein Tablett mit Android 5.1.1 API22 sowie ein neues mit Android 11. An beiden Geräten konnte ich diesen Fall bislang nicht reproduzieren. Kann es an der Version liegen?
 
Last edited:

Steini1980

Active Member
Licensed User
Longtime User
Ja, stammt aus der Dialogslibrary. Muss dann wohl doch mal mit B4XDialog experimentieren, das ganze Projekt ist schon seit 2014 in stetiger Weiterentwicklung, da sind mittlerweile einige Dialoge, die sich teilweise auch selbst anhand von Stücklisten, Checklisten und Auftragsdaten inhaltlich konfigurieren. Daher scheue ich den Umbau noch etwas.
 

Steini1980

Active Member
Licensed User
Longtime User
Leider gestaltet sich der Umbau etwas schwierig. Ich habe sämtliche Dialog in ein Code-Modul ausgelagert da diese mit unterschiedlichsten Parametern aus unterschiedlichsten Programmbereichen aufgerufen werden. Nun meckert er "Statische Codemodule können keine Ereignisse verarbeiten"

B4X:
Wait For (xDlg.ShowCustom(sv, "OK", "", "ABBRUCH")) Complete (Result As Int)

Wie kann ich das lösen damit die aufbereitung der Dialoge ausgelagert bleibt?
 
Top