Я пытаюсь проверить элемент по умолчанию в группе меню. Я ничего не меняю в меню с помощью кода.Проверка элемента по умолчанию в группе меню
Меню выглядит следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:title="Map type">
<menu>
<group
android:checkableBehavior="single"
>
<item
android:id="@+id/nav_map_type_normal"
android:title="Normal"
android:checked="true"
/>
<item
android:id="@+id/nav_map_type_satellite"
android:title="Satellite"
/>
<item
android:id="@+id/nav_map_type_terrain"
android:title="Terrain"
/>
<item
android:id="@+id/nav_map_type_hybrid"
android:title="Hybrid"
/>
</group>
</menu>
</item>
<item
android:id="@+id/nav_toggle_traffic"
android:title="Toggle traffic"
/>
<item
android:id="@+id/nav_settings"
android:icon="@drawable/ic_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
/>
</menu>
При первом отображении меню, первый пункт (Normal) подсвечивается для обозначения проверяется. Это то, что я хочу. Затем я хочу, чтобы подсветка перемещалась по группе при нажатии каждого элемента.
Проблема:
Если я нажимаю Satellite, нормальные и спутниковое подсвечиваются
Если я затем нажмите Hybrid, Normal остается подсвеченным, Гибрид подсвечена и Satellite возвращается к его неконтролируемое состояние.
Только после фактического нажатия кнопки «Нормальное» состояние его проверки ведет себя так, как должно.
Я попытался удалить андроид: checked = "true" и используя performIdentifierAction в коде, но это не изменило состояние проверки.
Я могу заставить его работать, просто установив параметр «Обычный» как отмеченный (ложный) всякий раз, когда нажимается другая опция, но я действительно хочу, чтобы он работал без необходимости добавлять код , Я думаю, что ** ** должно работать так, как будто это группа переключателей, и в этом случае всегда выбирается одна кнопка. –
Да, если вы хотите, чтобы он работал без добавления кода, вам следует использовать RadioGroup и RadioButtons, как указано здесь - http://developer.android.com/guide/topics/ui/controls/radiobutton.html –