Ciao Sto sviluppando un'applicazione Android. Nella mia applicazione sto usando ActionBarSherlock. Ho definito alcune voci di menu nell'azione-bar, nel seguente modo:Il sottomenu della barra delle azioni non funziona con actionLayout
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/card_menu"
android:title="cards"
android:showAsAction="always"
android:actionLayout="@layout/action_button"
>
<menu>
<item android:id="@+id/C1"
android:title="C1" />
<item android:id="@+id/C2"
android:title="c2" />
<item android:id="@+id/C3"
android:title="C3" />
</menu>
</item>
<item android:id="@+id/notification"
android:title="Notifications"
android:showAsAction="always"
android:actionLayout="@layout/notification_icon"
android:icon="@drawable/notification"
/>
<item android:id="@+id/filter"
android:icon="@drawable/filter"
android:title="Filter"
android:showAsAction="always"
/>
Ora, tutto visualizzato molto bene, ma il mio problema è che quando clicco su un elemento card_menu dove mi definisco sub menu e anche definire un layout di azione; non mostra quei sottomenu.
Le altre voci di menu funzionano correttamente. Solo quando definisco un layout di azione per il mio oggetto che contiene sottomenu in quel momento non riesco a visualizzare il sottomenu.
Se rimuovo il layout azione, allora sta funzionando bene ...
So che se definiamo un layout d'azione per una voce, quindi dobbiamo gestire manualmente il clic ascoltatore. L'ho fatto nel modo seguente:
final MenuItem item = menu.findItem(R.id.card_menu);
item.getActionView().setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
onOptionsItemSelected(item);
Toast.makeText(getActivity(), "click on menu", Toast.LENGTH_SHORT).show();
}
});
sono in grado di gestire l'evento click per tale voce, ma non in grado di mostrare le voci di menu sub discesa ..
Come risolvere questo problema? Come posso aprire i miei sottomenu?
bisogno di assistenza .... Grazie ...