Ich habe eine benutzerdefinierte DialogPreference
Unterklasse, in der ich eine RadioGroup
mit drei Radiobuttons haben möchte. Die ersten beiden sind Vanille RadioButton
Komponenten mit Titeln, aber für die dritte möchte ich eine EditText
direkt auf der rechten Seite davon platzieren, damit ich einen benutzerdefinierten Wert eingeben kann, wenn diese Schaltfläche ausgewählt ist.Hinzufügen von EditText neben RadioButton
Ich habe versucht, die dritte Taste in eine horizontale LinearLayout
zusammen mit der EditText
, aber dann die dritte Taste nicht mehr in der Elternteil RadioGroup
teilnehmen.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RadioGroup
android:id="@+id/lactate_radio"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/lactate_default_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lactate_default_value"/>
<RadioButton
android:id="@+id/lactate_calibrated_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lactate_calibrated_value" />
<LinearLayout android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<RadioButton
android:id="@+id/lactate_custom_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lactate_custom_value"/>
<EditText
android:id="@+id/lactate_custom_value_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
</RadioGroup>
</LinearLayout>
Ich habe auch versucht, diese LinearLayout
programmatisch hinzugefügt hatte aber immer noch das gleiche Verhalten. Gibt es eine Möglichkeit, dies zu tun, indem Sie beispielsweise dem Elternteil RadioGroup
über die dritte Taste explizit mitteilen oder die EditText
auf geeignete Weise positionieren, ohne eine horizontale LinearLayout
zu verwenden? Ansonsten denke ich, ich muss eine RadioButton
Unterklasse schreiben, die eine echte Party sein sollte!
Was ist mit einem RelativeLayout dann Linear, das die RadioGroup enthält und dann einfach den EditText neben dem dritten RadioButton basierend auf seiner ID platziert Attribut. – TronicZomB
Da 'EditText' eine völlig andere Ansicht ist, kann es nicht' RadioGroup' sein. Entweder können Sie programmgesteuert 'Aktivieren' &' Deaktivieren', während das dritte Optionsfeld geklickt ist, den Weg, um etwas wie diese zu erreichen. Ich hoffe du bekommst es. –