Что должно возвращаться getCheckedRadioButtonId() после RadioGroup.clearCheck()?

Из документов:

public void clearCheck ()

Очищает выбор. Когда выбор снят, ни один переключатель в этой группе не выбран, и getCheckedRadioButtonId() возвращает null.

Но похоже, что на самом деле он возвращает -1. А также строчка:

if(radioGroup.getCheckedRadioButtonId()==null)

дает ошибку:

Оператор == не определен для типа(ов) аргумента int, null

Должен ли я рассчитывать на то, что он вернет -1 после выполнения clearCheck()?


person Alaa M.    schedule 11.08.2015    source источник


Ответы (1)


Тип возвращаемого значения radioGroup.getCheckedRadioButtonId() (как в документации) — int. int не может быть null, поэтому я думаю, вам следует полагаться на -1.

Изменить: если вы не уверены, как работает компонент Android, просто проверьте исходный код :) Для RadioGroup см., например: http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.1.1_r1/android/widget/RadioGroup.java#RadioGroup.clearCheck%28%29

person Leon Joosse    schedule 11.08.2015