Menü-Element-IDs in ein Android-library-Projekt?
Die Android-app verwendet ein Bibliothek-Projekt, dass die meisten app-code, denn es gibt zwei Versionen der app erstellt, aus der core-Quelle. Seit ein IntelliJ IDEA-update (bis v11) ich erhalte diese Warnung auf jeden Fall Aussagen:
Resource IDs cannot be used in a switch statement in Android library modules
Hier der code:
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_item_one: //Build error here
//Do stuff
return true;
case R.id.menu_item_two: //Build error here
//Do stuff
return true;
default:
return super.onOptionsItemSelected(item);
}
}
OK, also wenn ich keine Referenz über Ihre ID, wie kann ich verweisen?
- Ich nehme an, eine Lösung wäre, um dynamisch die Menü-Einträge erstellen, aber das entfernt alle die Vorteile der Verwendung von Ressourcen für die Menüs. Diese Fehler scheinen zu sagen es ist nicht möglich, XML-Menü-Definitionen in der Bibliothek Projekte?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ersatz der
switch
mit einemif/else if
konstruieren.Dies ist notwendig, da der ADT 14, da der Letzte Modifikator wurde entfernt von id ' s in der R-Klasse.
Sehen Nicht-Konstante Felder im Falle Etiketten