У меня есть простая программа, в которой есть 3 переключателя в группе. Когда я нажимаю на любой из переключателей, у меня появляется Toast, чтобы сообщить пользователю, какую кнопку они выбрали.
Моя проблема, с которой я столкнулся, заключается в том, что у меня есть событие onClick
для кнопки, которая clearCheck
является радиогруппой. Когда это происходит, всплывающее сообщение появляется снова с предыдущей выбранной информацией из переключателя.
Как предотвратить появление всплывающего уведомления при clearCheck
группе радио?
public class MainActivity extends AppCompatActivity {
RadioGroup radioGroup;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Initialize Radio Group and attach click handler
radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
radioGroup.clearCheck();
// Attach CheckedChangeListener to Radio Group
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
RadioButton rb = (RadioButton) group.findViewById(checkedId);
if(null!=rb && checkedId > -1){
Toast.makeText(MainActivity.this, rb.getText(), Toast.LENGTH_SHORT).show();
}
}
});
}
public void onClear(View v){
// Clears the radio buttons when the clear button is pressed
radioGroup.clearCheck();
}
clearCheck
. - person dilix   schedule 13.01.2016!= -1
вместо> -1
? - person Mark Keen   schedule 13.01.2016if (checkedId != -1) {..... }
все внутри onCheckChanged - сделать проверку, прежде чем делать что-либо еще? - person Mark Keen   schedule 13.01.2016