2015-11-07 1 views
0

Je souhaite utiliser String Array dans MainActivity et afficher mon élément dans Navigation Drawer .Par exemple String[] name = {"a", "b", "d" ,"e"}. Je veux voir cette liste de tableau dans mon élément de tiroir de navigation.Comment utiliser la matrice de chaînes à l'intérieur de l'activité du tiroir de navigation

public class MainActivity extends AppCompatActivity 
     implements NavigationView.OnNavigationItemSelectedListener { 

    // suppose there is a string array 
    String[] name = {"a", "b", "d" ,"e"} 
    // now I want to show this array in my Navigation drawer item 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); 
     fab.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) 
         .setAction("Action", null).show(); 
      } 
     }); 

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

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

    @Override 
    public void onBackPressed() { 
     DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
     if (drawer.isDrawerOpen(GravityCompat.START)) { 
      drawer.closeDrawer(GravityCompat.START); 
     } else { 
      super.onBackPressed(); 
     } 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 

     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 


    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     // Handle action bar item clicks here. The action bar will 
     // automatically handle clicks on the Home/Up button, so long 
     // as you specify a parent activity in AndroidManifest.xml. 
     int id = item.getItemId(); 

     //noinspection SimplifiableIfStatement 
     if (id == R.id.action_settings) { 
      return true; 
     } 

     return super.onOptionsItemSelected(item); 
    } 

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

     if (id == R.id.nav_camara) { 
      // Handle the camera action 
     } else if (id == R.id.nav_gallery) { 

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

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

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

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

     } 

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

Oui, merci ;-) Et quelle est votre question? (BTW, s'il vous plaît lire ceci: http://stackoverflow.com/help/mcve) – kebs

+0

Je l'ai déjà mentionné que je veux montrer l'élément dans l'élément tiroir de navigation de mon tableau de chaînes utilisé dans MainActivity java class –

Répondre

1

Placez simplement votre élément de tableau dans le dossier de menu.

+0

Je sais de cette façon aller dossier de menu et ajouter un menu d'élément dans le fichier XML. Mais je souhaite ajouter un élément de ma classe java MainActivity en décalant une chaîne de tableau dans cette classe MaintActvity, pas à partir du fichier XML. –

+0

puis implémente NavigationView.OnNavigationItemSelectedListener ne fonctionne pas et vous devez écrire un autre moyen de codage. Mais actuellement c'est la bonne façon d'utiliser le tiroir, à partir de xml – Faravy