Layout - maximal grosses Quadrat

J

Javus

Neues Mitglied
0
Hallo!

Ich bin ganz neu in der Android-Programmierung und habe eine vielleicht einfache Frage zum Layout. Ich möchte ein maximal grosses Quadrat auf den Bildschirm bringen. Sollte es ein Rechteck sein, würde ich in meinem Java-Programm Folgendes schreiben:

LayoutParams myLayout = new LayoutParams (LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT) ;
myView.setLayoutParams (myLayout) ;

Aber ich möchte wie gesagt nur ein Quadrat; nur die kleinere Dimension des Elternfenster soll massgeblich sein.

Wie geht das? :confused2:

Javus
 
Zuletzt bearbeitet:
höhe und breite auf match_parent setzen. Danach mit getHeight() und getWidth() überprüfen, welches das kleinere von beiden ist und das große dem kleinen anpassen.


MfG nijoX
 
nijoX schrieb:
höhe und breite auf match_parent setzen. Danach mit getHeight() und getWidth() überprüfen, welches das kleinere von beiden ist und das große dem kleinen anpassen.


MfG nijoX
Ja, so sollte es gehen - nur was muss man zwischen dem Setzen der Maximalgrösse und der Überprüfung noch tun?

Wenn ich direkt nach dem Kontruieren des View und des Setzen des Layouts getWidth() aufrufe, liefert es 0. Möglicherweise muss man die ganze Oberfläche erst anzeigen? Und wie kann man sie dann neu layouten??

:confused2:
 
erstmal malen also View.setLayoutParams dann width und height aufrufen ... und neu zuweisen. View.setLayoutParams nochmals aufrufen.

MfG nijoX
 
nijoX schrieb:
erstmal malen also View.setLayoutParams ...

Nein, das funktioniert bei mir leider nicht. SetLayoutParams malt nichts. Erst wenn das OnCreate meiner Activity vollkommen abgeschlossen ist, fängt das System an zu malen und ruft z.B. onLayout und onDraw meines Views auf.
 
Die Größe eines Views wird von Android durch (teilweise wiederholtes) Aufrufen der Methode onMeasure im Viewobjekt ausgehandelt. Dort kann man sich einklinken und mit setMeasuredDimension() dem System sagen, welche Größe man wirklich will.
 
  • Danke
Reaktionen: Javus
Hat geklappt! :)
 

Ähnliche Themen

L
Antworten
4
Aufrufe
1.332
lonnie9020
L
A
Antworten
1
Aufrufe
879
koje71
koje71
T
Antworten
4
Aufrufe
1.230
jogimuc
J
Zurück
Oben Unten