I know this sound weird so here is the picture.
It hold the correct value. The correct radiobutton is (partially) selected. All logic in the OnCheckedChangeListener
is executed correctly. I'm completly stunned. Why is the radio button not fully checked?
Only thing I can think of is that i'm using Rx2Firebase
periodRetriever = FirebaseHelper.getInstance(getContext()).getPeriod()
.defaultIfEmpty(0)
.distinctUntilChanged()
.subscribe(new Consumer<Integer>() {
@Override
public void accept(@NonNull Integer headerType) throws Exception {
getRadioViewChecked(headerType).setChecked(true);
}
});
EDIT1
Marcos suggestion I can't see the white tick. This is not the case.
EDIT2
Layout:
<RadioGroup
android:id="@+id/rgPeriod"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<android.support.v7.widget.AppCompatRadioButton
android:id="@+id/rbMonth"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="false"
android:text="@string/month" />
<android.support.v7.widget.AppCompatRadioButton
android:id="@+id/rbWeek"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="false"
android:text="@string/week" />
<android.support.v7.widget.AppCompatRadioButton
android:id="@+id/rb4Weeks"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="false"
android:text="@string/four_weeks" />
</RadioGroup>
Radio buttons are normally presented in radio groups (a collection of radio buttons describing a set of related options). Only one radio button in a group can be selected at the same time. Note: The radio group must have share the same name (the value of the name attribute) to be treated as a group.
Only one radio button in a group can be checked. You have two radio buttons with different names. This means that you have two radio groups, each containing one radio button. You need to put them in the same group (by making them share a name) if you only want one of them to be selected.
Looks like an Animation Bug. When using a CompoundButton on a Fragment inside a ViewPager the drawable state is not set correctly.
This happens also for Checkboxes as seen here: Android Nougat: Why do checkboxes on Fragment have incomplete state when selected programmatically (but look fine on Lollipop).
Calling jumpDrawablesToCurrentState() just after calling RadioGroup.check(id) or Checkbox.setChecked(true) seems to fix the problem (thx @Dalmas)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With