2015-08-22 8 views
0

Я пытаюсь сделать математическое приложение для маленьких детей. И есть вид деятельности по настройке параметров математических вопросов. (количество цифр, + или -, включен ли таймер и т. д.) И я делаю часть цифр. Вот мой макет:Кнопка Android Radio не работает должным образом

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       xmlns:tools="http://schemas.android.com/tools" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:paddingLeft="@dimen/activity_horizontal_margin" 
       android:paddingRight="@dimen/activity_horizontal_margin" 
       android:paddingTop="@dimen/activity_vertical_margin" 
       android:paddingBottom="@dimen/activity_vertical_margin" 
       tools:context=".MainActivity" 
       android:layout_gravity="center_horizontal" 
       android:orientation="vertical"> 
    <ScrollView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:id="@+id/customize_menu" 
     android:layout_weight="9"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="@string/digit_text" 
       android:textSize="@dimen/customize_menu_title"/> 

      <RadioGroup 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal"> 

       <RadioButton 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="1" 
        android:textSize="@dimen/customize_menu_radio" 
        android:layout_marginLeft="@dimen/radio_button_spacing"/> 

       <RadioButton 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="2" 
        android:textSize="@dimen/customize_menu_radio" 
        android:layout_marginLeft="@dimen/radio_button_spacing" 
        android:checked="true"/> 

       <RadioButton 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="3" 
        android:textSize="@dimen/customize_menu_radio" 
        android:layout_marginLeft="@dimen/radio_button_spacing"/> 

      </RadioGroup> 

     </LinearLayout> 

    </ScrollView> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:orientation="horizontal" 
     android:layout_weight="1"> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="@string/button_trophies"/> 
     <Button 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="1" 
      android:text="@string/button_start"/> 
    </LinearLayout> 

</LinearLayout> 

Как вы можете видеть, я установить переключатель с текстом «2», который будет установлен по умолчанию. Однако, когда я запускаю приложение и нажимаю на переключатель «3», проверяются оба переключателя «2» и «3»! Затем я попытался нажать на переключатель «1», и теперь отмечены только радиокнопка «1» и «2». Другими словами, любой переключатель, который я нажимаю, всегда будет переключаться на радиокнопку «2». Но это не так, как работают радиокнопки, верно?

Вопросы: Как я могу исправить это поведение, не изменяя тот факт, что переключатель «2» установлен по умолчанию? Почему у них такое поведение?

ответ

0

дает идентификатор к вашей радиокнопке и проблеме решен

  <RadioButton android:id="@+id/btn1" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="1" 
       android:textSize="@dimen/customize_menu_radio" 
       android:layout_marginLeft="@dimen/radio_button_spacing"/> 

      <RadioButton android:id="@+id/btn2" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="2" 
       android:textSize="@dimen/customize_menu_radio" 
       android:layout_marginLeft="@dimen/radio_button_spacing" 
       android:checked="true"/> 

      <RadioButton android:id="@+id/btn3" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:text="3" 
       android:textSize="@dimen/customize_menu_radio" 
       android:layout_marginLeft="@dimen/radio_button_spacing"/> 
+0

Это работает! Но почему моя радиокнопка «1» и радиокнопка «3» работали? – Sweeper

+0

радиогруппа будет работать только в том случае, если все радиообъекты имеют уникальный идентификатор. –

+0

не знаю, почему 1 и 3 работает –

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