J'ai un problème étrange avec les sous-menus android: checkableBehavior = "single". Cela fonctionne bien si le menu est dans la barre d'action, mais affiche des cases à cocher à la place des boutons radio si le menu est en mode action. J'utilise AppCompatActivity et crée le mode action avec startActionMode().Sous-menu en mode action et checkableBehavior
Menu xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/priority"
android:title="@string/priority"
app:showAsAction="ifRoom">
<menu>
<group android:checkableBehavior="single">
<item
android:id="@+id/low_priority"
android:title="@string/low_pririty"/>
<item
android:id="@+id/normal_priority"
android:title="@string/normal_priority"/>
<item
android:id="@+id/high_priority"
android:title="@string/high_priority"/>
</group>
</menu>
</item>
</menu>
Comment puis-je résoudre ce problème?
Je vais l'essayer. Mais pourquoi startActionMode ne devrait pas être utilisé? Je n'ai rien vu à ce sujet dans la documentation. Je développe pour API 15+, donc je n'utilise pas la bibliothèque de support quand il y a une implémentation de framework (et ça a bien fonctionné avant que je rencontre ce problème). –
Merci, cela a fonctionné. J'ai également vérifié le code source d'Android et découvert que startActionMode avec AppCompatActivity utilise également l'implémentation de la bibliothèque de support, en l'enveloppant dans les classes du framework. Cela signifie que les développeurs ont intentionnellement autorisé l'utilisation de startActionMode avec AppCompatActivity (sinon, il retournerait null ou déclencherait une exception) et c'est un bug. –