Android: Platzieren Sie die Optionsfelder horizontal

Lesezeit: 6 Minuten

Unten ist mein relatives Layout. Ich versuche, die Optionsfelder über dem Bearbeitungstext zu platzieren

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#FFFFFF" >

    <ImageView
        android:id="@+id/fbreplycancel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:src="https://stackoverflow.com/questions/15005551/@drawable/fbcancel" />

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="80dp"
        android:layout_height="250dp"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/fbcancel" >

        <Spinner
            android:id="@+id/replyspinner"
            android:layout_width="50dp"
            android:layout_height="30dp"
            android:layout_alignLeft="@+id/fbshare"
            android:layout_alignRight="@+id/fbshare"
            android:layout_below="@+id/fbshare"
            android:layout_marginTop="16dp"
            android:drawSelectorOnTop="true"
            android:entries="@array/fbcommentlist"
            android:visibility="gone" />

        <Button
            android:id="@+id/fbshare"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:background="@drawable/fbbuttons"
            android:text="@string/share" />

        <ImageView
            android:id="@+id/fbpeople"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_above="@+id/fbshare"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="19dp"
            android:background="@drawable/people2"
            android:drawSelectorOnTop="true"
            android:paddingTop="20dp" />

        <RadioButton
            android:id="@+id/radio2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:text="RadioButton" />
    </RelativeLayout>

    <View
        android:layout_width="250dp"
        android:layout_height="0.7dip"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/imageView1"
        android:background="#3b5998" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/fbcancel"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:paddingRight="2dp"
        android:src="@drawable/askabud" />

    <TextView
        android:id="@+id/fbcommentpostedby"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/fbedittext"
        android:layout_alignRight="@+id/fbcommentdisplay"
        android:layout_below="@+id/imageView1"
        android:layout_marginTop="15dp"
        android:textColor="#000000" />

    <TextView
        android:id="@+id/fbcommentdisplay"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/fbedittext"
        android:layout_below="@+id/fbcommentpostedby"
        android:layout_toLeftOf="@+id/relativeLayout1"
        android:textColor="#000000" />

    <TextView
        android:id="@+id/fbtextview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/imageView1"
        android:layout_toLeftOf="@+id/fbreplycancel"
        android:layout_toRightOf="@+id/imageView1"
         android:text="@string/replyrecommend" 
          android:textSize="18sp"
          android:textColor="#000000"/>

    <TextView
        android:id="@+id/fbplacename"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/fbcommentdisplay"
        android:layout_alignRight="@+id/fbcommentdisplay"
        android:layout_below="@+id/fbcommentdisplay"
        android:textColor="#000000" />

    <EditText
        android:id="@+id/fbedittext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/fbplacename"
        android:layout_marginLeft="19dp"
        android:layout_marginTop="45dp"
        android:layout_toLeftOf="@+id/relativeLayout1"
        android:background="@drawable/roundcorners"
        android:ems="10"
        android:hint="@string/fbhint"
        android:lines="6"
        android:scrollHorizontally="true"
        android:textSize="14sp"
        android:windowSoftInputMode="stateHidden" />

    <RadioGroup
        android:id="@+id/radioGroup1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/fbplacename" >

        <RadioButton
            android:id="@+id/radio0"
            android:layout_width="30dp"
            android:layout_height="30dp"
            android:checked="true"
            android:text="1"
             />
    </RadioGroup>

    <RadioGroup
        android:id="@+id/radioGroup2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/radioGroup1"
        android:layout_toLeftOf="@+id/relativeLayout1" >

        <RadioButton
            android:id="@+id/radio0"
            android:layout_width="26dp"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="3" />

        <RadioButton
            android:id="@+id/radio2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="RadioButton" />
    </RadioGroup>

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_alignTop="@+id/radioGroup2"
        android:layout_toLeftOf="@+id/radioGroup2"
        android:text="2" />

</RelativeLayout>

Ich stehe vor einer schwierigen Zeit, sie horizontal anzuordnen. Jede Hilfe wird geschätzt.

  • orientierung=”horizontal” in Radiogruppe ?

    – njzk2

    21. Februar 2013 um 15:07 Uhr

  • Wie gebe ich gleichen Abstand zwischen ihnen

    – teekib

    21. Februar 2013 um 15:12 Uhr

Benutzer-Avatar
Sergio Carneiro

Um eine Funkgruppe (oder eine andere Ansicht) über einer anderen zu platzieren, tun Sie einfach Folgendes:

android:layout_above="@+id/view_below"

Um die Ausrichtung zu ändern, stellen Sie einfach Folgendes ein:

android:orientation="horizontal"

Und um den verwendeten Gegenständen die gleiche Breite zu geben layout_weight:

<RadioGroup
    android:id="@+id/radio_group"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:layout_above="@+id/view_below" >

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:checked="true"
        android:text="First" />

    <RadioButton
        android:id="@+id/radio2"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:text="Second" />
</RadioGroup>

  • Ich werde die Antwort bearbeiten und den Code zusammenfügen. Überprüfen Sie, ob es mit Ihrem identisch ist.

    – Sergio Carneiro

    21. Februar 2013 um 15:32 Uhr

  • @Sergio … danke … perfekt

    – teekib

    21. Februar 2013 um 15:54 Uhr

  • Ist das layout_alignParentLeft=”true” unbedingt erforderlich? Ich konnte dies nicht zum Laufen bringen, arbeite aber auch im Kontext einer plattformübergreifenden Xamarin-App, in der die Dinge möglicherweise unterschiedlich sind.

    – Frank Schwietermann

    15. November 2016 um 16:54 Uhr

  • Nein @FrankSchwieterman, diese Eigenschaft ist nicht erforderlich und ich habe sie entfernt, danke. Zu deinem Problem, was bekommst du? Vertikale Radiobuttons oder schlecht verteilte Breitenwerte? Wie Sie sagen, kann dies ein Problem mit den Funktionen von Xamarin sein

    – Sergio Carneiro

    15. November 2016 um 17:45 Uhr


  • Das Ergebnis, das ich erhalte, ist, dass sich die Schaltflächen nicht dehnen, um den übergeordneten Bereich auszufüllen. Gibt es Anforderungen an den Container, den ich überprüfen könnte? Vielen Dank.

    – Frank Schwietermann

    15. November 2016 um 19:51 Uhr


Benutzer-Avatar
Zain

Sie können das Tabellenlayout anstelle des relativen Layouts verwenden. Fügen Sie eine Zeile in das Tabellenlayout ein und platzieren Sie Optionsfelder in der Tabellenzeile.

Für gleichen Abstand befolgen Sie das folgende Verfahren

<TableRow
        android:id="@+id/tableRow2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="50dp" >

        <RadioButton
            android:id="@+id/button2"
            android:layout_width="5dp"
            android:layout_height="60dp"
            android:layout_weight="1"
            android:text="@string/btnReject"
            android:onClick="onCallRejectButton" />

        <RadioButton
            android:id="@+id/button1"
            android:layout_width="5dp"
            android:layout_height="60dp"
            android:layout_weight="1
            android:onClick="onCallAcceptButton"
            android:text="@string/btnAccept" />

    </TableRow>

  • Es ist keine gute Idee, da der Benutzer beide auswählen und nicht abwählen kann. Per Optionsgruppe kann der Benutzer nur eine davon auswählen, und durch Auswählen einer neuen Optionsschaltfläche wird die alte ausgewählte Optionsschaltfläche deaktiviert.

    – amin

    26. Juli 2017 um 11:23 Uhr

android:orientation=”horizontal” tun Sie dies einfach. Geben Sie die horizontale Ausrichtungseigenschaft für das Radiogroup-Tag ein

 <RadioGroup
    android:id="@+id/radio"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

    <RadioButton
        android:id="@+id/radioMale"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Male"
        android:checked="true" />

    <RadioButton
        android:id="@+id/radioFemale"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Female" />

</RadioGroup>

Sie müssen nur die Ausrichtung der Funkgruppe auf horizontal stellen.

 <RadioGroup                                    
android:id="@+id/radio_group_forgot_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
**android:orientation="horizontal"**                               
>

1251660cookie-checkAndroid: Platzieren Sie die Optionsfelder horizontal

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy