2012-03-26 5 views
0

У меня есть ListView:Выбор радиокнопки.

<ListView 
     android:id="@+id/my_list" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" /> 

Расположение каждой строки ListView является:

<? Xml version="1.0"encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
    <ImageView 
      android:id="@+id/my_img" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_algnParentLeft="true" 
      android:layout_centerVertical="true"   
      /> 
    <TextView 
     android:id="@+id/my_value" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@id/my_img" 
     android:textColor="@drawable/black" /> 
    <RadioButton 
     android:id="@+id/my_radio" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_toRightOf="@id/my_value" /> 

</ RelativeLayout> 

Как вы видите выше, есть RadioButton на каждой строке списка, то как реализовать следующие две функции касаемо RadioButton:

1. Предположим, есть 3 элемента в списке, как сделать радиокнопка в каждой строке выполнить единственный выбор в списке? (По умолчанию, я могу выбрать все радио-кнопки)

2. Как иметь каждый пункт область строки кликабельным для выбора кнопки на радио вместо только нажать на кнопку радио для выбора?

+0

Может помочь http://stackoverflow.com/questions/7329856/how-to-use-radiogroup-in-listview-custom-adapter –

ответ

0

Получить ссылку на ваш ListView, установить его свойство, как

lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE); 

Также снимите переключатель с вашего макета XML. Вышеуказанный метод автоматически поместит переключатель в каждую из строк вашего списка. Использование:

<? Xml version = "1.0" encoding = "utf-8"?> 
<RelativeLayout 
    xmlns: android = "http://schemas.android.com/apk/res/android" 
    android: layout_width = "fill_parent" 
    android: layout_height = "fill_parent" 
    > 
    <ImageView 
      android: id = "@+id/my_img" 
      android: layout_width = "wrap_content" 
      android: layout_height = "wrap_content" 
      android:layout_algnParentLeft="true" 
      android: layout_centerVertical = "true"   
      /> 
    <TextView 
     android: id = "@+id/my_value" 
     android: layout_width = "wrap_content" 
     android: layout_height = "wrap_content" 
     android:layout_toRightOf="@id/my_img" 
     android: textColor = "@drawable/ black" /> 


</ RelativeLayout> 
+0

Я хотел бы, если использование нажмите на область строк (независимо от того, что это значок радио или значок изображения), радиокнопка проверяется, как это сделать? –

+0

После установки режима выбора по одному, по щелчку строки, переключатель для этой строки будет проверен, а другие не отмечены. – Akhil

+0

Я удалил из моей строки и добавил режим одиночного выбора в свой список, но нет кнопки «Радио». Можете ли вы быть более ясными, где должен быть определен переключатель? –

Смежные вопросы