2016-08-17 3 views
4

Я создал ящик с навигационным видом. У меня есть пункт навигации, на котором я называю другие действия.Название навигационного элемента исчезло при нажатии

Проблема заключается в том, когда я нажимаю на элемент навигации, запускается другое действие, и если я вернусь к основному действию и откройте ящик, заголовок элемента навигации по нажатию исчезнет только я вижу значок элемента.

код:

public class MainActivity extends AppCompatActivity 
     implements NavigationView.OnNavigationItemSelectedListener { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.activity_main); 

     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     toolbar.setNavigationIcon(R.drawable.menu_icon); 
     setSupportActionBar(toolbar); 

     mDrawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
     ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
       this, mDrawer , toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); 
     mDrawer .addDrawerListener(toggle); 
     toggle.syncState(); 

     NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); 
     navigationView.setNavigationItemSelectedListener(this); 
     navigationView.setItemIconTintList(null); 

    } 
    @SuppressWarnings("StatementWithEmptyBody") 
    @Override 
    public boolean onNavigationItemSelected(MenuItem item) { 
     // Handle navigation view item clicks here. 
     int id = item.getItemId(); 

     if (id == R.id.nav_list) { 

      startActivity(new Intent(MainActivity.this, LaunchVenueServiceActivity.class)); 
      // Handle the camera action 
     } 

     else if (id == R.id.nav_dashboard) { 


      startActivity(new Intent(MainActivity.this, MainActivity.class)); 

     } 
     else if (id == R.id.nav_config) 
     { 
      startActivity(new Intent(MainActivity.this,LaunchYourServiceStep2.class)); 
     } 

     else if (id == R.id.nav_chat) { 


     } else if (id == R.id.nav_notes) { 

      startActivity(new Intent(MainActivity.this,NotesActivity.class)); 

     } else if (id == R.id.nav_user_guide) { 

     } 
     else if(id == R.id.nav_log_out) 
     { 

      SharedPreferences.Editor editor = getSharedPreferences("username",MODE_PRIVATE).edit(); 
      editor.remove("UserUsername"); 
      editor.commit(); 

      Intent intent1 = new Intent(MainActivity.this,LoginActivity.class); 
      intent1.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); 
      intent1.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK); 
      finish(); 

      startActivity(intent1); 

     } 

     mDrawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
     mDrawer.closeDrawer(GravityCompat.START); 
     return true; 
    } 

} 

Что может быть причиной этого ?? Может ли кто-нибудь помочь? Спасибо ..

+0

Это может иметь какое-то отношение к выбранному цвету элемента навигации. Чтобы проверить это, измените цвет фона в навигационном ящике. – Marcel50506

ответ

2

Получил решение .. Просто попытался изменить цвет текста навигационного элемента, и он сработал. Не знаю, почему и как ..

navigationView.setItemTextColor (ColorStateList.valueOf (Color.BLACK));

+0

вы сохранили мой день, я попытался изменить цвета элементов в xml-файле на черный, но он не работал, элементы меню просто исчезали в цвете макета. но такая же окраска в файле activity.java заставила элементы обзора отображаться – antroid

Смежные вопросы