Как я могу настроить поведение радиогруппы SingleChoice для 2 или более флажков на Android?(специально здесь для 2 флажков)
-
26-12-2019 - |
Вопрос
Привет, друзья из stackoverflow.Я новичок в Android, и у меня есть простой вопрос, который меня беспокоит!У меня есть 2 флажка (например, CheckBoxAutomat и CheckBoxManual) .Я хочу иметь подобную группу RadioButton типа SingleChoice behavior for my checkBoxes
.Я пишу этот код, но для меня он дает неверный результат.Как я могу настроить поведение радиогруппы SingleChoice для 2 или более флажков (здесь специально для 2 флажков)?Код:
CheckBoxAutomat.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
// TODO Auto-generated method stub
if(CheckBoxManual.isChecked())
{
CheckBoxManual.setChecked(false);
}
}
});
//..............................
CheckBoxManual.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)
{
// TODO Auto-generated method stub
if(CheckBoxAutomat.isChecked())
{
CheckBoxAutomat.setChecked(false);
}
}
});
Решение
Я задал этот вопрос, потому что мне не понравился стандартный стиль checkoboxes, в то время как radibutton мне был нужен наверняка.Итак, я поместил RadioGroup в свое приложение, а затем изменил android: button с помощью checkbox_selector (с моими любимыми картинками), который я создал.cb_selector, подобный этому :
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@drawable/checked2" />
<item android:state_checked="false" android:drawable="@drawable/unchecked2" />
</selector>
это должно быть записано в xml-файл в drawable forlder.затем я пишу @drawable /cb_selector в свойстве Button для каждой radiobutton в моей RadioGroup.