German Orientation

Heinz

Active Member
Licensed User
Longtime User
Hallo,
bin im Forum nicht so recht fündig geworden.
Da bei den Buttons beim Drehen des Smartphones
(zu Landscape) die Beschriftung nicht mehr richtig
angezeigt wird, will ich im Programm den Event
erkennen und ggf. die Buttons neu setzen.

Da ich auch das Table Codemodul benutze, habe
ich den Designer nicht benutzt und alles per Code
erstellt.

Wie macht man das am besten ?
 

eurojam

Well-Known Member
Licensed User
Longtime User
Hallo Heinz,
beim Drehen des Smartphones wird Sub Activity_Create aufgerufen. Hier kannst Du nun mit folgendem Codefragment landscape oder portrait ermitteln:
B4X:
If activity.width > activity.height then
    'landscape
Else
    'portrait
End If

Gruß
Stefan
 

Heinz

Active Member
Licensed User
Longtime User
Danke,
geht ja ganz einfach, indem man das Layout ändert :
Button1.SetLayout(0, 10, 20%x, 20%y)

Geht sowas auch per Hand als API ähnlich wie bei Windows ?

Grund :
Da ich Erels Code-Modul Table benutze, ist auch kein
RemoveView und kein SetLayout möglich bzw. nicht
vorhanden. Wenn ich bei einem Wechsel trotzdem
mit
Listview1.AddToActivity(Activity, 0, 180, 100%x, 80%y)

neu setzen will, bekomme ich natürlich eine Fehlermeldung,
die besagt, daß ich zuerst RemoveView benutzen muß.

Ich habe zwar jetzt alles so angeordnet, daß ich das Grid
nicht neu positionieren muß, aber es könnte ja Situationen
geben, wo man es neu setzen muß.
 

Heinz

Active Member
Licensed User
Longtime User
Da fehlte noch die Scrollview2D. Aber als erfahrener
Windowsprogger erkennt man schnell, daß da eine
Lib fehlt. Also schnell beim B4A - Forum nachgeschaut
und installiert.

Ist ja Wahnsinn : selbst ein horizontales Scrollen und eine
automatische Spaltenbreitenskalierung bei LoadCsv...
hat er eingebaut. Das kam mir bei meiner etwas breiteren
Gridbox gerade recht.

Das läßt ja wirklich kaum noch Wünsche offen.

Vielen Dank nochmal.
 
Top