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

    Duckemai Threadstarter Erfahrener Benutzer

    Hallo zusammen,

    ich habe eine Frage zu den Layout-Tags.

    Ich habe mir eigene Buttons definiert. 4 in jeder Reihe, in 5 Zeilen.
    So weit, so gut.
    In der letzten Zeile will ich aber nur 3 Buttons haben und der erste soll
    doppelt so lang sein, also den Raum von 2 Buttons einnehmen.
    Easy, dachte ich, und habe folgendes gemacht:

    <LinearLayout
    android: orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_weight="1">

    Und habe dann für den ersten folgenden Button das layout_weight auf "2" gesetzt, die anderen beiden auf "1".

    Klappt aber nicht. Dem Button fehlt ein Stück, um bis zur Hälfte
    des Bildschirms zu kommen. Dementsprechend sind die beiden anderen
    etwas zu groß.

    Ein Denkfehler?

    Danke im Voraus.
    Duckemai
     
    Zuletzt bearbeitet: 27.07.2010
  2. MichaelS, 27.07.2010 #2
    MichaelS

    MichaelS Fortgeschrittenes Mitglied

    denkfehler == true | android:layout_weight="1" == füllen JA | android:layout_weight="0" == füllen NEIN
     
  3. Duckemai, 27.07.2010 #3
    Duckemai

    Duckemai Threadstarter Erfahrener Benutzer

    Das man grundsätzlich android:layout_weight einsetzen kann war ja nun klar. Aber ich versuche damit eine bestimme Aufteilung der Buttons zu erreichen.

    Jemand eine Idee, ob ich dafür layout_weight benutzen kann oder etwas anderes?
     
  4. FelixL, 27.07.2010 #4
    FelixL

    FelixL Ehrenmitglied

    Common Layout Objects | Android Developers
    layout_weight ist ansich genau richtig.
    Ist wohl nur etwas zickig ;)

    Kannst du mal die komplette xml posten?

    Edit: Ich bekomm es auch nicht besser hin, bei mir verschwinden die Buttons, die ich auf 2 setze :D
     
    Zuletzt bearbeitet: 27.07.2010
  5. Duckemai, 27.07.2010 #5
    Duckemai

    Duckemai Threadstarter Erfahrener Benutzer

    Gerne. Hier die dazugehörige main.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android: orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    //erste Reihe mit 4 Buttons
    <LinearLayout
    android: orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_weight="1">

    <Button ...android:layout_weight="1" ...</Button>
    <Button ...android:layout_weight="1" ...</Button>
    <Button ...android:layout_weight="1" ...</Button>
    <Button ...android:layout_weight="1" ...</Button>

    //ab hier die 2. Reihe mit nur 3 Buttons. Der erste soll so lang sein wie die ersten 2 Buttons darüber

    <LinearLayout
    android: orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_weight="1">

    <Button
    android:text="@string/numinfo"
    android:id="@+id/Button17"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:layout_weight="2" />

    <Button
    android:text="@string/numpunkt"
    android:id="@+id/Button19"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:layout_weight="1" />

    <Button
    android:text="@string/numgleich"
    android:id="@+id/Button20"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:layout_weight="1" />

    </LinearLayout>
    </LinearLayout>
     
  6. FelixL, 27.07.2010 #6
    FelixL

    FelixL Ehrenmitglied

    android:layout_width="wrap_content"
    probier da mal bei den drei Buttons fill_parent. sonst fällt mir nix ein.
    Oder aber nach dem Zitat oben layout_width="0" setzen.
     
    Zuletzt bearbeitet: 27.07.2010
  7. FelixL, 27.07.2010 #7
    FelixL

    FelixL Ehrenmitglied

    Doppelpost, Die Lösung wollte ich einzeln haben:
    layout_width="0dip"

    Mein Beispiel sind 3 Reihen mit 4 Buttons und eine Reihe mit 3, wovon einer doppelt so dick ist wie die anderen.

     
    Duckemai gefällt das.
  8. Duckemai, 28.07.2010 #8
    Duckemai

    Duckemai Threadstarter Erfahrener Benutzer

    Danke schön,
    genau das war es!

    android:layout_width="0dip" und nicht fill_parent.

    Daumen rauf,
    Duckemai
     
Die Seite wird geladen...
Du betrachtest das Thema "Button doppelt so groß darstellen" im Forum "Android App Entwicklung",