Если у вас есть объект флажка во время выполнения, вы можете редактировать его динамически. Например, вы можете проверить это с помощью
myCheckBox.setChecked(true);
Вы можете изменить окраску следующим образом, если вы находитесь в том же контексте:
для Android <23</p>
int states[][] = {{android.R.attr.state_checked}, {}};
int colors[] = {ctx.getResources().getColor(R.color.myCheckedCheckboxColor),ctx.getResources().getColor(R.color.myUncheckedCheckboxColor)};
CompoundButtonCompat.setButtonTintList(myCheckBox,new ColorStateList(states,colors));
для Android> = 23
int states[][] = {{android.R.attr.state_checked}, {}};
int colors[] = {ctx.getResources().getColor(R.color.myCheckedCheckboxColor),ctx.getResources().getColor(R.color.myUncheckedCheckboxColor)};
myCheckBox.setForegroundTintList(new ColorStateList(states,colors)); // <-- requires @TargetApi(23)
CompoundButtonCompat.setButtonTintList(myCheckBox,new ColorStateList(states,colors));
Вы также можете редактировать другие атрибуты стиля. Я не знаю, нужно ли вам устанавливать все атрибуты самостоятельно или же вы можете просто применить новый стиль как простой oneliner ...