2017-06-30 3 views
0

Ich habe eine Navigationsschublade in meiner Anwendung mit verschiedenen Aktivitäten. Alles läuft gut, aber ich habe ein großes Problem. Wenn ich die Aktivität in der Navigationsleiste ändern möchte, wird das Element nicht überprüft oder falsch geprüft. Zum Beispiel möchte ich in Aktivität B gehen, wenn ich die Navigationsleiste nicht auswähle oder ein anderes Element ausgewählt habe. Hier gibt es einige Codes: Artikel:
`Navigationsschublade falsch überprüft, wenn ich Aktivität ändere

<item 
    android:id="@+id/nav_home" 
    android:icon="@drawable/ic_home" 
    android:title="@string/Button_home"/> 

<group android:checkableBehavior="single" 
    android:id="@+id/anonimous_group"> 

    <item 
     android:id="@+id/nav_registrati" 
     android:icon="@mipmap/ic_create_black_24dp" 
     android:title="@string/registrati"/> 
    <item 
     android:id="@+id/nav_login" 
     android:icon="@mipmap/ic_filter_tilt_shift_black_24dp" 
     android:title="@string/accedi"/> 
</group> 

<group android:checkableBehavior="single" 
    android:id="@+id/logged_group" 
    > 
    <item 
     android:id="@+id/nav_profilo" 
     android:icon="@drawable/id_profile" 
     android:title="@string/Profilo"/> 
    <item 
     android:id="@+id/nav_notifiche" 
     android:icon="@drawable/ic_notifications" 
     android:title="@string/Notifiche"/> 
    <item 
     android:id="@+id/nav_mie_recensioni" 
     android:icon="@drawable/ic_review" 
     android:title="@string/mie_recensioni"/> 
    <item 
     android:id="@+id/nav_persone_seguo" 
     android:icon="@drawable/ic_person" 
     android:title="@string/persone_seguo"/> 
    <item 
     android:id="@+id/nav_oggetti_seguo" 
     android:icon="@drawable/ic_favorite" 
     android:title="@string/oggetti_seguo"/> 
    <item 
     android:id="@+id/nav_inserisci_recensione" 
     android:icon="@drawable/ic_review" 
     android:title="@string/inserisci_recensione"/> 
    <item 
     android:id="@+id/nav_settings" 
     android:icon="@drawable/ic_build" 
     android:title="@string/action_settings"/> 
    <item 
     android:id="@+id/nav_esci" 
     android:icon="@mipmap/ic_exit_to_app_black_24dp" 
     android:title="@string/exit"/> 
</group> 

<item 
    android:id="@+id/nav_Assistenza" 
    android:icon="@drawable/ic_help" 
    android:title="@string/Assistenza"/> 

und Überaktivität:

@Override 
public boolean onNavigationItemSelected(MenuItem item) { 
    Log.i("Successo","SOno entrato"+item.getItemId()); 
    // now set clicked menu item to checked 
    Intent intent; 
    switch(item.getItemId()) { 
     case R.id.nav_home: 
      intent = new Intent(ctx, A10_HomePage.class); 
      break; 
     case R.id.nav_registrati: 
      intent = new Intent(ctx, A1_LoginIniziale.class); 
      editor.putString("previous", "REG").apply(); 
      break; 
     case R.id.nav_login: 
      intent = new Intent(ctx, A1_LoginIniziale.class); 
      editor.putString("previous", "LOGIN").apply(); 
      break; 
     case R.id.nav_notifiche: 
      intent = new Intent(ctx, A14_Notifiche.class); 
      break; 
     case R.id.nav_mie_recensioni: 
      intent = new Intent(ctx, A23_MieRecensioni.class); 
      break; 
     case R.id.nav_oggetti_seguo: 
      intent = new Intent(ctx, A22_OggettiSeguiti.class); 
      break; 
     case R.id.nav_persone_seguo: 
      intent = new Intent(ctx, A19_PersoneSeguite.class); 
      break; 
     case R.id.nav_inserisci_recensione: 
      intent = new Intent(ctx, A15_InserisciRecensione.class); 
      break; 
     case R.id.nav_settings: 
      intent = new Intent(ctx, A6_Impostazioni.class); 
      break; 
     case R.id.nav_Assistenza: 
      intent = new Intent(ctx, A35_Assistenza.class); 
      break; 
     case R.id.nav_esci: 
      removeUser(); 
      intent = new Intent(ctx, A1_LoginIniziale.class); 
      break; 
     case R.id.nav_profilo: 
      intent = new Intent(ctx, A7_ProfiloPrivato.class); 
      break; 
     default: 
      intent = new Intent(ctx, A10_HomePage.class); 
      break; 
    } 
    intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
    startActivity(intent); 
    drawer.closeDrawer(GravityCompat.START); 
    return true; 
} 

Layout:

<android.support.design.widget.NavigationView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:id="@+id/nav_view" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     app:itemIconTint="@color/drawer_item_text" 
     app:itemTextColor="@color/drawer_item_text" 
     app:headerLayout="@layout/nav_header"/> 

Antwort

0

ich auch dieses Problem gefunden haben, und ich lösen dies durch mit

onNavigationItemSelected (navView.getMenu(). GetItem (R.id.nav_ profile));

onNavigationItemSelected (navView.getMenu(). GetItem (0)); verwenden Sie dies für die erste Artikelauswahl standardmäßig.

+0

Wo ich brauche diesen Code zu setzen? – PeanutButter

+0

Innen Aktivität mit der ID jedem navigate Artikel dh nav_home, nav_mie_recensioni –

+0

, die für mich ist nicht mein app Absturz – PeanutButter

0

Dieses ziehbar

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:color="#FFFFFF" android:state_checked="true" /> 
    <item android:color="#7D7D7F" android:state_checked="false" android:state_enabled="false" /> 
    <item android:color="#7D7D7F" android:state_enabled="false" /> 
    <item android:color="#7D7D7F" /> 
</selector> 

und verwenden dann diese ziehbar für Ihren Text Ansicht

<android.support.design.widget.NavigationView 
     xmlns:android="``http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:id="@+id/nav_view" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     app:itemIconTint="@color/drawer_item_text" 
     app:itemTextColor="@color/navigation_text_color" 
     app:headerLayout="@layout/nav_header" 

Sie können die gleiche Sache für Symbol tun auch

+0

Didn lösen‘ t Arbeit für mich, ich habe dasselbe Problem – PeanutButter

Verwandte Themen