UPDATESo legen Sie die Sichtbarkeit für eine Aktionsleistenmenügruppe fest?
Ursprünglich war ich mit ActionBarSherlock ich da habe ein brandneues Projekt mit einer nativen Android-Aktionsleiste erstellt gerade dies zu testen und ich bin immer noch das gleiche Problem bekommen.
Ich zeige/verstecke erfolgreich Objekte, aber keine Gruppen. Ich komme schnell zu dem Schluss, dass es einen Fehler in der ActionBar ist, und es ist nicht möglich, programmatisch die Sichtbarkeit einer UPDATE
ENDE
Gruppe gesetztdas folgende Menü gegeben, wenn die Gruppe I Zugriff einen null-Zeiger Ausnahme erhalten
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/action_settings"
android:title="@string/settings"
android:orderInCategory="100"
android:showAsAction="never"/>
<group android:id="@+id/mnu_text_group"
android:visible="false">
<item android:id="@+id/mnu_text_type"
android:enabled="true"
android:visible="true"
android:icon="@drawable/ic_action_text_icon"
android:showAsAction="always">
</item>
<item android:id="@+id/text_color"
android:enabled="true"
android:visible="true"
android:showAsAction="always"
android:icon="@drawable/ic_action_color_line">
</item>
</group>
<item android:id="@+id/mnu_images"
...
im onPrepareOptionsMenu der betreffenden Tätigkeit habe ich
public boolean onPrepareOptionsMenu(Menu menu) {
MenuItem mnuTextGroup = menu.findItem(R.id.mnu_text_group);
mnuImage.setEnabled(mEnableImageMenu);
mnuTextGroup.setVisible(false);
...
Der Aufruf an mnuTextGroup.setVisible(false);
löst eine Nullzeigerausnahme
durch Ändern der Suchmethode, um ein Element in der Gruppe zu finden, funktioniert z. MenuItem mnuTextGroup = menu.findItem(R.id.mnu_text_type);
aber offensichtlich funktioniert das nur für den spezifischen Artikel. Ich weiß, dass Gruppen für genau diesen Zweck entworfen sind, um die Sichtbarkeit von allen Elementen innerhalb der Gruppe zu aktivieren und zu deaktivieren, aber ich habe keine Möglichkeit gefunden, dies programmatisch zu tun.
Nein, immer noch null Zeiger Ausnahme. Verstehen Sie wirklich nicht, warum Sie denken würden, dass die Verwendung einer booleschen Variablen anstelle einer harten Codierung false eine Nullzeigerausnahme für die Variable mnuTextGroup verhindern würde? – jamesc
Seine Arbeit In meinem Fall. Ich verstehe nicht, dass Sie eine Nullpunkt-Ausnahme erhalten. –
Es funktioniert nicht für eine, es funktioniert nur für eine - –
jamesc