Android dynamische Buttons positionieren

dev4678

Neues Mitglied
Hallo,

ich würde gerne immer ein Button erstellen wenn man ein Button drückt. Es sollen immer 2 Buttons nebeneinander stehen. Der 3 Button soll dann unter dem ersten stehen und der 4 neben den 3 usw. Ich bekomme zwar die erste Reihe hin, aber ich weiß einfach nicht wie ich den 3 Button dann unter den ersten Button bekomme.

Hier ein Code Ausschnitt:

Java:
 private void addbtn(View v){
       
        LinearLayout ll = new LinearLayout(v.getContext());

        if (btnCounter % 2 == 0){
          //  ll.setOrientation(LinearLayout.HORIZONTAL);
        } else{
           // ll.setOrientation(LinearLayout.VERTICAL);
        }

        LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);

        layoutParams.setMargins(10, 10, 10, 10);

        Button button = new Button(v.getContext());

        button.setHeight(250);
        button.setWidth(250);
        button.setText("Plan" + btnCounter);

        button.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT));

        button.setBackgroundColor(Color.RED);

        ll.addView(button, layoutParams);
        btnCounter++;
    }

Versucht habe ich das Linearlayout horizontal zu stellen, wenn Buttons nebeneinander generiert werden sollen und vertical wenn der nächste Button untereinander stehen soll.
Das Problem ist, wenn ich die Orientation vertical stelle, sind alle Button dann untereinander.

Ist das so überhaupt möglich zu realisieren oder muss ich dafür ein ganz anders Layout verwenden?

Danke schon mal im voraus

MfG: Dennis
 
Hi dein Problem hier ist das ein LinearLayout immer nur Viewelement in einer Richtung anzeigen kann, also entweder alles Horizontal nebeneinander oder Vertikal Untereinander.
Entweder du verwendest hier ein anderes Layout z.B. das RelativLayout, oder du nimmst ein vertikales LinearLayout dem du immer wenn du eine neue Buttonreihe beginnen willst ein weiteres horizontales LinearLayout hinzufügst und in dieses dann die neuen Buttons einfügst.
 

Neue Themen


Zurück
Oben