2016-07-13 5 views
1

Ich habe schon seit einigen Stunden um dieses Problem gekämpft, aber ich kann es immer noch nicht schaffen, dieses Problem zu lösen. Hoffe, jemand kann mir helfen, herauszufinden, was mit meinem Code passiert.Kann Symbol R.menu und R.id.menu_settings nicht beheben

Android Studio kann nicht das Symbol Menü und action_settings in meinem Code beheben. Ich habe versucht, Cache und Neustart für viele Male zu säubern und neu aufzubauen und ungültig zu machen, aber es hilft nicht, mein Problem zu lösen.

Das ist mein MainActivity.java:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(**R.menu.menu_main**, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 

    int id = item.getItemId(); 

    if (id == **R.id.action_settings**) { 
     return true; 
    } 
    return super.onOptionsItemSelected(item); 
} 

Gibt es irgendein Problem zu meinem Code? Es tut mir so leid, dass ich noch neu im Android Studio bin, hoffe ihr könnt mir vergeben.

Antwort

0

Sie müssen eine Menü-XML-Datei mit Ordner als Menü unter res haben. In den neuen Android Studio-Aktivitäten wird weder der Menüordner erstellt, noch werden die Menüs für die Aktivitäten erstellt.

Nachdem Sie den Menüordner hinzugefügt haben, müssen Sie die Datei menu_main.xml manuell hinzufügen. Danach können Sie diesen Code verwenden, um auf das Menü zuzugreifen.

Java:

@Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     MenuInflater inflater = getMenuInflater(); 
     inflater.inflate(R.menu.main_menu, menu); 
     return true; 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     // Handle item selection 
     switch (item.getItemId()) { 
      case R.id.logout: 
       Intent intent_logout = new Intent(getApplicationContext(), LoginActivity.class); 
       startActivity(intent_logout); 
       return true; 

      default: 
       return super.onOptionsItemSelected(item); 
     } 
    } 
+0

Dank für die Antwort, es auf jeden Fall funktioniert: D –

Verwandte Themen