Startseite › Foren › Deutsches LiveCode-Forum › Fenstergrösse bei Android
- Dieses Thema hat 9 Antworten und 3 Teilnehmer, und wurde zuletzt aktualisiert vor 7 Jahren von RehW.
-
AutorBeiträge
-
-
Dezember 3, 2017 um 15:47 Uhr #3045
Hi zusammen
Ich versuche gerade meine erste App und habe ein Problem mit der Fentergrösse.
Folgende Grössen habe ich bereits probiert:
– 300×400
– 384×512Bei keiner Grösse wird die App richtig dargestellt. Die Navibar befindet sich nicht am unteren Rand und bei beiden befindet sich noch Platz zum unteren Rand. Bei der Breite habe ich rechts noch Platz bei 300×400 und bei 384×512 wird ein Teil abgeschnitten. Habe schon alles mögliche bei Resize ausprobiert ohne Erfolg.
Wie muss ich die Navibar einstellen damit sie am unteren Rand ist und nicht abgeschnitten wird?Mfg Rene
-
Dezember 3, 2017 um 16:03 Uhr #3049
Hi Rene,
ich nehme mal an, Du redest vom Widget „Navigation Bar“, das Du verwendest?
Zunächst sollte Dir „the screenrect“ die genauen Abmessungen der Monitorgröße des verwendeten Devices liefern. Also könntest du zunächst:
... set the rect of this stack to the screenrect ## Was aber automatisch passieren sollte und wohl auch wird. ... ## Nun das Widget richtig positionieren: ## 1. Breite anpassen set the width of widget "your navbar here..." to item 3 of the screenrect ## 2. Nun ganz "unten links" positionieren set the bottomleft of widget "your navbar here..." to 0, item 4 of the screenrect ...
Nun sollte es passen.
Gruß
Klaus
-
Dezember 3, 2017 um 18:14 Uhr #3053
Hi Klaus,
genau ich meinte das Widget „Navigation Bar“. Ich habe es mit den oberen Code probiert, aber es bleibt an der selben Stelle mit der selben Grösse. Habe es mit preOpenStack und resizeStack versucht, hat sich aber nichts geänder. Auch bei der Geometry habe ich schon verschiedene Eintellungen ausprobiert. Gibt es keine besere Möglichkeit für das Ausrichten der Widgets. Ich müsste ja alle anpassen damit sie auf allen Grössen gleich ausgerichtet sind und die gleiche Grösse haben.
Mfg Rene
-
Dezember 4, 2017 um 13:04 Uhr #3057
Was hast Du denn als „fullscreenmode“ gesetzt? Falls überhaupt.
Ich entwickle nicht für Mobile, besitze auch kein Handy o.ä., kann das daher nicht ausprobieren.
-
Dezember 4, 2017 um 18:09 Uhr #3062
Hi Klaus,
Fullscreen habe ich in OpenStack geetzt mit:
set the fullscreenmode of me to true
Es ändert sich nur die Höhe der Navigation Bar. Werde es gleich nochmal auf dem Handy testen.
Mit der Hilfe komme ich auch nicht klar, bis man da etwas gefunden hat. Wo finde ich z.Bsp. denn Infos darüber welches item bei screenrect der Breite oder Höhe entspricht?Gruss Rene
-
Dezember 4, 2017 um 19:02 Uhr #3064
Hallo Rene,
bitte unbedingt „fullscreen“ und „fullscreenmode“ im Dictionary nachschlagen, das sind zwei unterswdchiedliche paar Schuhe! Unter iOS und Android ist „fullscreen“ IMMER TRUE!
Wichtig ist, welchen Wert Du bei „fullscreenmode“ eintellst!
Da gibt es nämlich kein TRUE oder FALSE!„the screenrect“ liefert bei mir Folgendes zurück: 0,0,1920,1200 = x1, y1, x2, y2
Also x1 und y1 der linken oberen Ecke, da von dort aus „gemessen“ wird, ist das 0 und 0.
x2 und y2 der unteren rechten Ecke sind die letzten beiden Werte, also ist mein Monitor 1920 Pixel breit und 1200 Pixel hoch.Gruß
Klaus
-
Dezember 5, 2017 um 04:26 Uhr #3068
Hi René,
Versuch mal folgendes im Stack-Script:
on preOpenStack
set the fullscreenmode of me to „exactfit“
end preOpenStack
Das sollte deine ganzen cards automatisch an jedes Display anpassen.
Du musst das entweder im Mainstack für jeden Stack (also auch für die Substacks) schreiben, oder eben für jeden Stack einzeln im entsprechenden Stack-Script.Liebe Grüße
Philip -
Dezember 5, 2017 um 13:54 Uhr #3074
Hi Klaus und Philip,
im Moment habe ich folgenden Code:
on preOpenStack set the rect of this stack to the screenrect ## Was aber automatisch passieren sollte und wohl auch wird. ##set the fullscreen of this stack to true set the fullscreenmode of me to "exactfit" ## Nun das Widget richtig positionieren: ## 1. Breite anpassen set the width of widget "navibar" to item 3 of the screenrect ## 2. Nun ganz "unten links" positionieren set the bottomleft of widget "navibar" to 0, item 4 of the screenrect end preOpenStack
Leider noch immer ohne Erfolg, werde es mal mit dem resizeStack probieren und es prozentual ausrechnen um es an die richtige Position zu bekommen.
Ich teste es unter Windows und muss LiveCode immer beenden und neu starten. Sonst übernimmt er nicht meine Änderungen.MfG Rene
-
Dezember 5, 2017 um 22:34 Uhr #3088
Hi René,
Versuche mal zwei Dinge:
1.
Lass mal die Screenrect-Sachen weg und zieh das Widget mit der Maus so in Position, wie du es haben willst. Mit dem fullscreenmode „exactfit“ sollte sich der Screen dann automatisch an das jeweilige Device anpassen.
Hast du im Propertymanager das Häckchen bei „lock Position“ gesetzt?2.
Versuch mal dein Handy per USB mit dem Rechner zu verbinden. Vorher solltest du in den Sicherheitseinstellungen deines Smartphones das USB-Debugging aktivieren. Ebenfalls die Option „unbekannte Quellen“ aktivieren. Dann kannst du in LC deine App jederzeit mit dem „Test“ – Button oben rechts auf dem Handy testen. LC bildet dann eine APK die per USB auf dein Smartphone überspielt und installiert wird.Kleiner Tipp: Vorher mit Strg+S unbedingt speichern. Manchmal macht es das von selber, manchmal nicht. Beim ersten Test nach Programmstart stürzt LC gerne mal ab.
Liebe Grüße
Philip -
Dezember 7, 2017 um 08:31 Uhr #3122
Hi Aldred,
wenn ich das Handy mit dem Rechner verbinde funtioniert es. Wenn ich es aber unter Windows teste und die Größe des Stacks änder werden die Widgets nicht an die neue Größe angepasst welche ich in das Script unter resizeStack eingetragen habe. Habe es im Propertymanager mit und ohne dem Häckchen bei „Lock size and position“ und bei „Resize when setting rect property“ probiert. Werde aber noch weiter testen. Ich mache da bestimmt noch etwas verkehrt.
Werde mir mal das Buch von Hauke bestellen, dann habe ich mehr Infos auf Deutsch.MfG Rene
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.