1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Abstand zwischen zwei Buttons ändern

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Kosta.Kos, 17.06.2011.

  1. Kosta.Kos, 17.06.2011 #1
    Kosta.Kos

    Kosta.Kos Threadstarter Neuer Benutzer

    Beiträge:
    11
    Erhaltene Danke:
    0
    Registriert seit:
    01.06.2011
    Hi,

    ich möchte den Abstand zwischen zwei Buttons verändern.
    Sowohl vertikal als auch horizontal.
    Ich habe das schon mit setPadding probiert, dabei ändere ich aber nur den Abstand innerhalt des Buttons.

    Habt ihr evtl. einen Tipp für mich.

    Grüße
    Kosta
     
  2. swordi, 17.06.2011 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    ein wrapper layout drum rum und dort das padding ändern wird dir helfen.

    padding bei einem button, hast du ja schon festgestellt, ändert den abstand innerhalb
     
  3. tenji73, 17.06.2011 #3
    tenji73

    tenji73 Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    1
    Registriert seit:
    13.12.2010
    probiere es mit margin. paddings sind innerhalb eines elements - margins ausserhalb..
    gruss
    tom
     
  4. Kosta.Kos, 17.06.2011 #4
    Kosta.Kos

    Kosta.Kos Threadstarter Neuer Benutzer

    Beiträge:
    11
    Erhaltene Danke:
    0
    Registriert seit:
    01.06.2011
    Habe gerade mal die beiden Tipps getestet. Leider kein Erfolg.
    Das mit den margins habe ich wie folgt gelöst.

    Code:
    
      Button b = new Button(this);
            Button b2 = new Button(this);
            li = new LinearLayout(this);
            li.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
            li.setOrientation(LinearLayout.VERTICAL);
            b.setText("test1");
            LinearLayout.LayoutParams myParams = new LinearLayout.LayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
            myParams.setMargins(android.widget.LinearLayout.LayoutParams.WRAP_CONTENT, android.widget.LinearLayout.LayoutParams.WRAP_CONTENT, android.widget.LinearLayout.LayoutParams.WRAP_CONTENT, android.widget.LinearLayout.LayoutParams.WRAP_CONTENT);
            b.setLayoutParams(myParams);
            
            
            b2.setText("test2");
            b2.setLayoutParams(myParams);
            b2.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
            TextView textview = new TextView(this);
            textview.setText("Text TextView");
            textview.setBackgroundColor(color.blue2);
            li.setPadding(1, 1, 1, 1);
            li.addView(textview);
            li.addView(b);
            li.addView(b2);
            
            setContentView(li);
    
    
    
    
     
  5. Kosta.Kos, 17.06.2011 #5
    Kosta.Kos

    Kosta.Kos Threadstarter Neuer Benutzer

    Beiträge:
    11
    Erhaltene Danke:
    0
    Registriert seit:
    01.06.2011
    Update!

    Habs falsche gemacht. Habe nun jeden Button in eine eigenes Layout gepackt.
    Nun kann ich den Abstand ändern. Leider aber nur größer machen.

    Ich glaube, so kann ich den Default-Abstand aber nicht verkleinern.
    Und das möchte ich eigentlich.

    Hintergrund: Ich nutze ein Table Layout.
    Da gibt es erst einmal kein Gitter. Deshalb nutze ich Buttons, so hat man eine schöne Abgrenzung. Leider ist mir der Abstand zu groß.

    Habs ihr dazu noch Ideen?

    Gruß
    Kosta
     
  6. Kosta.Kos, 17.06.2011 #6
    Kosta.Kos

    Kosta.Kos Threadstarter Neuer Benutzer

    Beiträge:
    11
    Erhaltene Danke:
    0
    Registriert seit:
    01.06.2011
    Lösung gefunden!

    Das Wrapper Layout ist nicht wichtig.
    So klappt es.
    Leider sind durch die Layout Angabe alle Defualt-Angaben der Buttonrepräsentation verloren gegangen. Die muss ich mir nun wieder selber stricken. Aber so gehts

    Code:
    
     LinearLayout.LayoutParams myParams = new LinearLayout.LayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
            myParams.setMargins(1, 1, 1, 1);
            b.setBackgroundColor(Color.BLUE);
            b.setLayoutParams(myParams);
            b2.setBackgroundColor(Color.BLUE);
            l2.setLayoutParams(myParams);
            
            b2.setText("test2");
            b2.setLayoutParams(myParams);
    
    
     

Diese Seite empfehlen