1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. Javus, 17.10.2011 #1
    Javus

    Javus Threadstarter Neuer Benutzer

    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: 17.10.2011
  2. nijoX, 17.10.2011 #2
    nijoX

    nijoX Junior Mitglied

    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
     
  3. Javus, 17.10.2011 #3
    Javus

    Javus Threadstarter Neuer Benutzer

    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:
     
  4. nijoX, 17.10.2011 #4
    nijoX

    nijoX Junior Mitglied

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

    MfG nijoX
     
  5. Javus, 17.10.2011 #5
    Javus

    Javus Threadstarter Neuer Benutzer

    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.
     
  6. DieGoldeneMitte, 17.10.2011 #6
    DieGoldeneMitte

    DieGoldeneMitte Android-Lexikon

    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.
     
    Javus gefällt das.
  7. Javus, 17.10.2011 #7
    Javus

    Javus Threadstarter Neuer Benutzer

    Hat geklappt! :)
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[Offen] Android Layout funktioniert nicht Android App Entwicklung 08.09.2017
[OFFEN] Klick auf Marker soll ein zweites kleineres Layout anzeigen, Map soll trotzdem noch scrollbar (verwendbar) sein Android App Entwicklung 04.04.2017
[ERLEDIGT] App (Apk) Grösse im PlayStore weg Android App Entwicklung 23.03.2017
[OFFEN] Toolbar Hintergrund Drawable animieren und in der vollen größe anzeigen Android App Entwicklung 22.03.2017
[ERLEDIGT] Layout (Design) erkennt style nicht? Android App Entwicklung 13.03.2017
Verständnisprobleme beim Layout Android App Entwicklung 21.02.2017
Layout-Probleme auf verschiedenen Geräten Android App Entwicklung 19.01.2017
Text View erzeugt rendering Problem Android App Entwicklung 18.11.2016
Du betrachtest das Thema "Layout - maximal grosses Quadrat" im Forum "Android App Entwicklung",